From a987d91ae121cafd089c1b460ce15c4c247fec65 Mon Sep 17 00:00:00 2001 From: Donald Zou Date: Sun, 29 Jun 2025 16:11:05 +0800 Subject: [PATCH] OIDC is ready? I think? --- src/client.py | 30 ++++++--- src/modules/DashboardClients.py | 64 ++++++++++++++++++- src/modules/DashboardOIDC.py | 39 ++++++----- ...-cdo-S5d9.js => configuration-BirGUgke.js} | 2 +- ...GJfyN.js => configurationList-BF3DlWGJ.js} | 2 +- ....min-C4BEB1lt.js => dayjs.min-DO3nadR-.js} | 2 +- ...qsx1g.js => editConfiguration-64y8oZmp.js} | 2 +- .../{index-CfPziasH.js => index-AzYVPyhh.js} | 4 +- .../{index-qE9bY-2C.js => index-Cjfqz0Z7.js} | 2 +- .../{index-CPB-8sFq.js => index-DuEkGU1e.js} | 2 +- ...ext-CyxQ0Kz3.js => localeText-qJNpKS91.js} | 2 +- ...essage-C4Yp0lwZ.js => message-CTPyyUOY.js} | 2 +- ...GJ7xSk.js => newConfiguration-C6S0P_og.js} | 2 +- .../{osmap-C6nMOrBf.js => osmap-iyZf8b7y.js} | 2 +- ...l-BmoNcHxr.js => peerAddModal-BaPKy6IQ.js} | 2 +- ...C.js => peerConfigurationFile-D_jhzEId.js} | 2 +- ...rJobs-BLwykEew.js => peerJobs-OIcsbyz2.js} | 2 +- ...Xg9VpA.js => peerJobsAllModal-Ca-jbk3P.js} | 2 +- ...-kSkv.js => peerJobsLogsModal-7hkHiE3G.js} | 2 +- ...rList-sNMkmM1X.js => peerList-BqyAB2cF.js} | 4 +- ...ist-EJuRsJAQ.css => peerList-mRv1n5MO.css} | 2 +- ...ode-GmcmuBji.js => peerQRCode-DiLT87Op.js} | 2 +- ...-CdEZuAVf.js => peerSearchBar-BEWVShK6.js} | 2 +- ...s-a8GW0whb.js => peerSettings-ByC23ho9.js} | 2 +- ...seK9.js => peerShareLinkModal-DKEiBJ_g.js} | 2 +- .../{ping-DuPgpLex.js => ping-DmtDLU9i.js} | 2 +- ...-BwyLRUKo.js => protocolBadge-Cbmuyguj.js} | 2 +- ...Tp.js => restoreConfiguration-CJFuDOeh.js} | 2 +- ...tVhPy4n.js => schedulePeerJob-Cy0v4heL.js} | 2 +- ...rs-Bs51pfmN.js => selectPeers-C_td7K2S.js} | 2 +- ...tings-Dl9arqou.js => settings-B46mikSI.js} | 2 +- .../{setup-BzCz1W8G.js => setup-T1V4VgjP.js} | 2 +- .../{share-QVhX-X9Q.js => share-Q69ZSAC1.js} | 2 +- ...{signin-BDhImFq0.js => signin-JVg9SMDM.js} | 2 +- ..._index_0_scoped_9509d7a0_lang-BOX6BWGk.js} | 2 +- ...s-_MkxdUbb.js => systemStatus-m4jEbVO8.js} | 2 +- .../{totp-2ovufqb0.js => totp-SN5K0l_P.js} | 2 +- ...ute-BgNVsivF.js => traceroute-DiI_l9IX.js} | 2 +- ...BZlVex04.js => vue-datepicker-Co-zpMN6.js} | 2 +- src/static/app/dist/index.html | 2 +- ...{index-BmGX7v2g.css => index-1THt9Piw.css} | 2 +- .../client/dist/assets/index-DFmEbKGG.js | 41 ++++++++++++ .../client/dist/assets/index-VLGPfnEQ.js | 41 ------------ src/static/client/dist/client.html | 38 +++++++++-- src/static/client/index.html | 34 +++++++++- src/static/client/src/assets/main.css | 2 +- .../src/components/SignIn/oidc/oidc.vue | 28 ++++++++ .../src/components/SignIn/oidc/oidcBtn.vue | 43 +++++++++++++ .../src/components/SignIn/signInForm.vue | 24 +------ src/static/client/src/main.js | 27 ++++++-- src/static/client/src/views/index.vue | 8 ++- 51 files changed, 353 insertions(+), 146 deletions(-) rename src/static/app/dist/assets/{configuration-cdo-S5d9.js => configuration-BirGUgke.js} (86%) rename src/static/app/dist/assets/{configurationList-BqKGJfyN.js => configurationList-BF3DlWGJ.js} (98%) rename src/static/app/dist/assets/{dayjs.min-C4BEB1lt.js => dayjs.min-DO3nadR-.js} (99%) rename src/static/app/dist/assets/{editConfiguration-UEBqsx1g.js => editConfiguration-64y8oZmp.js} (99%) rename src/static/app/dist/assets/{index-CfPziasH.js => index-AzYVPyhh.js} (99%) rename src/static/app/dist/assets/{index-qE9bY-2C.js => index-Cjfqz0Z7.js} (98%) rename src/static/app/dist/assets/{index-CPB-8sFq.js => index-DuEkGU1e.js} (99%) rename src/static/app/dist/assets/{localeText-CyxQ0Kz3.js => localeText-qJNpKS91.js} (76%) rename src/static/app/dist/assets/{message-C4Yp0lwZ.js => message-CTPyyUOY.js} (84%) rename src/static/app/dist/assets/{newConfiguration-ChGJ7xSk.js => newConfiguration-C6S0P_og.js} (99%) rename src/static/app/dist/assets/{osmap-C6nMOrBf.js => osmap-iyZf8b7y.js} (99%) rename src/static/app/dist/assets/{peerAddModal-BmoNcHxr.js => peerAddModal-BaPKy6IQ.js} (99%) rename src/static/app/dist/assets/{peerConfigurationFile-CP8FspMC.js => peerConfigurationFile-D_jhzEId.js} (95%) rename src/static/app/dist/assets/{peerJobs-BLwykEew.js => peerJobs-OIcsbyz2.js} (90%) rename src/static/app/dist/assets/{peerJobsAllModal-DmXg9VpA.js => peerJobsAllModal-Ca-jbk3P.js} (90%) rename src/static/app/dist/assets/{peerJobsLogsModal-B3F-kSkv.js => peerJobsLogsModal-7hkHiE3G.js} (96%) rename src/static/app/dist/assets/{peerList-sNMkmM1X.js => peerList-BqyAB2cF.js} (94%) rename src/static/app/dist/assets/{peerList-EJuRsJAQ.css => peerList-mRv1n5MO.css} (99%) rename src/static/app/dist/assets/{peerQRCode-GmcmuBji.js => peerQRCode-DiLT87Op.js} (93%) rename src/static/app/dist/assets/{peerSearchBar-CdEZuAVf.js => peerSearchBar-BEWVShK6.js} (92%) rename src/static/app/dist/assets/{peerSettings-a8GW0whb.js => peerSettings-ByC23ho9.js} (98%) rename src/static/app/dist/assets/{peerShareLinkModal-5XXDseK9.js => peerShareLinkModal-DKEiBJ_g.js} (97%) rename src/static/app/dist/assets/{ping-DuPgpLex.js => ping-DmtDLU9i.js} (98%) rename src/static/app/dist/assets/{protocolBadge-BwyLRUKo.js => protocolBadge-Cbmuyguj.js} (77%) rename src/static/app/dist/assets/{restoreConfiguration-CPPo1_Tp.js => restoreConfiguration-CJFuDOeh.js} (98%) rename src/static/app/dist/assets/{schedulePeerJob-DtVhPy4n.js => schedulePeerJob-Cy0v4heL.js} (96%) rename src/static/app/dist/assets/{selectPeers-Bs51pfmN.js => selectPeers-C_td7K2S.js} (97%) rename src/static/app/dist/assets/{settings-Dl9arqou.js => settings-B46mikSI.js} (99%) rename src/static/app/dist/assets/{setup-BzCz1W8G.js => setup-T1V4VgjP.js} (96%) rename src/static/app/dist/assets/{share-QVhX-X9Q.js => share-Q69ZSAC1.js} (95%) rename src/static/app/dist/assets/{signin-BDhImFq0.js => signin-JVg9SMDM.js} (98%) rename src/static/app/dist/assets/{storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BeoP6Zsu.js => storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BOX6BWGk.js} (93%) rename src/static/app/dist/assets/{systemStatus-_MkxdUbb.js => systemStatus-m4jEbVO8.js} (96%) rename src/static/app/dist/assets/{totp-2ovufqb0.js => totp-SN5K0l_P.js} (96%) rename src/static/app/dist/assets/{traceroute-BgNVsivF.js => traceroute-DiI_l9IX.js} (96%) rename src/static/app/dist/assets/{vue-datepicker-BZlVex04.js => vue-datepicker-Co-zpMN6.js} (99%) rename src/static/client/dist/assets/{index-BmGX7v2g.css => index-1THt9Piw.css} (98%) create mode 100644 src/static/client/dist/assets/index-DFmEbKGG.js delete mode 100644 src/static/client/dist/assets/index-VLGPfnEQ.js create mode 100644 src/static/client/src/components/SignIn/oidc/oidc.vue create mode 100644 src/static/client/src/components/SignIn/oidc/oidcBtn.vue diff --git a/src/client.py b/src/client.py index 922914a..cb56f4a 100644 --- a/src/client.py +++ b/src/client.py @@ -23,7 +23,7 @@ def ResponseObject(status=True, message=None, data=None, status_code = 200) -> F def login_required(f): @wraps(f) def func(*args, **kwargs): - if session.get("username") is None or session.get("totpVerified") is None or not session.get("totpVerified") or session.get("role") != "client": + if session.get("Email") is None or session.get("totpVerified") is None or not session.get("totpVerified") or session.get("role") != "client": return ResponseObject(False, "Unauthorized access.", data=None, status_code=401) return f(*args, **kwargs) return func @@ -33,7 +33,7 @@ def createClientBlueprint(wireguardConfigurations: dict[WireguardConfiguration], from modules.DashboardOIDC import DashboardOIDC - OIDC = DashboardOIDC() + DashboardClients = DashboardClients(wireguardConfigurations) client = Blueprint('client', __name__, template_folder=os.path.abspath("./static/client/dist")) prefix = f'{dashboardConfig.GetConfig("Server", "app_prefix")[1]}/client' @@ -49,12 +49,22 @@ def createClientBlueprint(wireguardConfigurations: dict[WireguardConfiguration], data = request.json status, msg = DashboardClients.SignUp(**data) return ResponseObject(status, msg) + + @client.get(f'{prefix}/api/signin/oidc/providers') + def ClientAPI_SignIn_OIDC_GetProviders(): + return ResponseObject(data=DashboardClients.OIDC.GetProviders()) - @client.post(f'{prefix}/api/signin/oidc/') - def ClientAPI_SignIn_OIDC_Google(): + @client.post(f'{prefix}/api/signin/oidc') + def ClientAPI_SignIn_OIDC(): data = request.json - print(OIDC.VerifyToken(**data)) - + status, oidcData = DashboardClients.SignIn_OIDC(**data) + if not status: + return ResponseObject(status, oidcData) + + session['Email'] = oidcData.get('email') + session['role'] = 'client' + session['totpVerified'] = True + return ResponseObject() @client.post(f'{prefix}/api/signin') @@ -62,14 +72,14 @@ def createClientBlueprint(wireguardConfigurations: dict[WireguardConfiguration], data = request.json status, msg = DashboardClients.SignIn(**data) if status: - session['username'] = data.get('Email') + session['Email'] = data.get('Email') session['role'] = 'client' session['totpVerified'] = False return ResponseObject(status, msg) @client.get(f'{prefix}/api/signout') def ClientAPI_SignOut(): - session['username'] = None + session['Email'] = None session['role'] = None session['totpVerified'] = None return ResponseObject(True) @@ -92,11 +102,11 @@ def createClientBlueprint(wireguardConfigurations: dict[WireguardConfiguration], return ResponseObject(False, "Please fill in all fields") status, msg = DashboardClients.SignIn_GetTotp(token, userProvidedTotp) if status: - if session.get('username') is None: + if session.get('Email') is None: return ResponseObject(False, "Sign in status is invalid", status_code=401) session['totpVerified'] = True return ResponseObject(True, data={ - "Email": session.get('username'), + "Email": session.get('Email'), "Profile": DashboardClients.GetClientProfile(session.get("ClientID")) }) return ResponseObject(status, msg) diff --git a/src/modules/DashboardClients.py b/src/modules/DashboardClients.py index 3ac8873..9cec3ea 100644 --- a/src/modules/DashboardClients.py +++ b/src/modules/DashboardClients.py @@ -8,6 +8,7 @@ import sqlalchemy as db from .ConnectionString import ConnectionString from .DashboardClientsPeerAssignment import DashboardClientsPeerAssignment from .DashboardClientsTOTP import DashboardClientsTOTP +from .DashboardOIDC import DashboardOIDC from .Utilities import ValidatePasswordStrength from .DashboardLogger import DashboardLogger from flask import session @@ -18,6 +19,7 @@ class DashboardClients: self.logger = DashboardLogger() self.engine = db.create_engine(ConnectionString("wgdashboard")) self.metadata = db.MetaData() + self.OIDC = DashboardOIDC() self.dashboardClientsTable = db.Table( 'DashboardClients', self.metadata, @@ -33,6 +35,18 @@ class DashboardClients: (db.DATETIME if 'sqlite:///' in ConnectionString("wgdashboard") else db.TIMESTAMP)), extend_existing=True, ) + + self.dashboardOIDCClientsTable = db.Table( + 'DashboardOIDCClients', self.metadata, + db.Column('ClientID', db.String(255), nullable=False, primary_key=True), + db.Column('Email', db.String(255), nullable=False, index=True), + db.Column('ProviderIssuer', db.String(500), nullable=False, index=True), + db.Column('ProviderSubject', db.String(500), nullable=False, index=True), + db.Column('CreatedDate', + (db.DATETIME if 'sqlite:///' in ConnectionString("wgdashboard") else db.TIMESTAMP), + server_default=db.func.now()), + extend_existing=True, + ) self.dashboardClientsInfoTable = db.Table( 'DashboardClientsInfo', self.metadata, @@ -85,7 +99,53 @@ class DashboardClients: ) ).mappings().fetchone() return existingClient + + def SignIn_OIDC_UserExistence(self, data: dict[str, str]): + with self.engine.connect() as conn: + existingClient = conn.execute( + self.dashboardOIDCClientsTable.select().where( + db.and_( + self.dashboardOIDCClientsTable.c.ProviderIssuer == data.get('iss'), + self.dashboardOIDCClientsTable.c.ProviderSubject == data.get('sub'), + ) + ) + ).mappings().fetchone() + return existingClient + def SignUp_OIDC(self, data: dict[str, str]) -> tuple[bool, str] | tuple[bool, None]: + if not self.SignIn_OIDC_UserExistence(data): + with self.engine.begin() as conn: + newClientUUID = str(uuid.uuid4()) + conn.execute( + self.dashboardOIDCClientsTable.insert().values({ + "ClientID": newClientUUID, + "Email": data.get('email', ''), + "ProviderIssuer": data.get('iss', ''), + "ProviderSubject": data.get('sub', '') + }) + ) + conn.execute( + self.dashboardClientsInfoTable.insert().values({ + "ClientID": newClientUUID + }) + ) + self.logger.log(Message=f"User {data.get('email', '')} from {data.get('iss', '')} signed up") + return True, newClientUUID + return False, "User already signed up" + + def SignIn_OIDC(self, **kwargs): + status, data = self.OIDC.VerifyToken(**kwargs) + if not status: + return False, "Sign in failed" + existingClient = self.SignIn_OIDC_UserExistence(data) + if not existingClient: + status, newClientUUID = self.SignUp_OIDC(data) + session['ClientID'] = newClientUUID + else: + session['ClientID'] = existingClient.get("ClientID") + + return True, data + def SignIn(self, Email, Password) -> tuple[bool, str]: if not all([Email, Password]): return False, "Please fill in all fields" @@ -149,7 +209,9 @@ class DashboardClients: "ClientID": newClientUUID, "Email": Email, "Password": bcrypt.hashpw(encodePassword, bcrypt.gensalt()).decode("utf-8"), - "TotpKey": totpKey + "TotpKey": totpKey, + "AuthType": "local", + "AuthSrc": "local" }) ) conn.execute( diff --git a/src/modules/DashboardOIDC.py b/src/modules/DashboardOIDC.py index 78af27e..b31340f 100644 --- a/src/modules/DashboardOIDC.py +++ b/src/modules/DashboardOIDC.py @@ -23,6 +23,17 @@ class DashboardOIDC: f.write(encoder.encode(self.__default)) self.ReadFile() + + def GetProviders(self): + providers = {} + for k in self.providers.keys(): + if all([self.providers[k]['client_id'], self.providers[k]['client_secret'], self.providers[k]['issuer']]): + providers[k] = { + 'client_id': self.providers[k]['client_id'], + 'issuer': self.providers[k]['issuer'].strip('/') + } + + return providers def VerifyToken(self, provider, code, redirect_uri): if not all([provider, code, redirect_uri]): @@ -32,7 +43,7 @@ class DashboardOIDC: return False, "Provider does not exist" provider = self.providers.get(provider) - oidc_config = requests.get(f"{provider.get('issuer')}.well-known/openid-configuration").json() + oidc_config = requests.get(f"{provider.get('issuer').strip('/')}/.well-known/openid-configuration").json() data = { "grant_type": "authorization_code", @@ -42,30 +53,24 @@ class DashboardOIDC: "client_secret": provider.get('client_secret') } - tokens = requests.post(oidc_config.get('token_endpoint'), data=data).json() - - + try: + tokens = requests.post(oidc_config.get('token_endpoint'), data=data).json() + if not all([tokens.get('access_token'), tokens.get('id_token')]): + return False, tokens.get('error_description', None) + except Exception as e: + return False, str(e) + + + id_token = tokens.get('id_token') - - - - - jwks_uri = oidc_config.get("jwks_uri") issuer = oidc_config.get("issuer") jwks = requests.get(jwks_uri).json() - - from jose.utils import base64url_decode - from jose.backends.cryptography_backend import CryptographyRSAKey - - # Choose the right key based on `kid` in token header headers = jwt.get_unverified_header(id_token) kid = headers["kid"] - # Find the key with the correct `kid` key = next(k for k in jwks["keys"] if k["kid"] == kid) - # Use the key to verify token payload = jwt.decode( id_token, key, @@ -74,7 +79,7 @@ class DashboardOIDC: issuer=issuer ) - print(payload) # This contains the user's claims + return True, payload def ReadFile(self): diff --git a/src/static/app/dist/assets/configuration-cdo-S5d9.js b/src/static/app/dist/assets/configuration-BirGUgke.js similarity index 86% rename from src/static/app/dist/assets/configuration-cdo-S5d9.js rename to src/static/app/dist/assets/configuration-BirGUgke.js index d2e2437..23a6d60 100644 --- a/src/static/app/dist/assets/configuration-cdo-S5d9.js +++ b/src/static/app/dist/assets/configuration-BirGUgke.js @@ -1 +1 @@ -import{_ as r,c as i,d as o,w as e,k as l,a as t,j as _,i as a,l as d,S as u}from"./index-CfPziasH.js";const m={name:"configuration"},p={class:"mt-md-5 mt-3 text-body"};function f(k,x,h,w,$,v){const n=l("RouterView");return t(),i("div",p,[o(n,null,{default:e(({Component:s,route:c})=>[o(_,{name:"fade2",mode:"out-in"},{default:e(()=>[(t(),a(u,null,{default:e(()=>[(t(),a(d(s),{key:c.path}))]),_:2},1024))]),_:2},1024)]),_:1})])}const B=r(m,[["render",f]]);export{B as default}; +import{_ as r,c as i,d as o,w as e,k as l,a as t,j as _,i as a,l as d,S as u}from"./index-AzYVPyhh.js";const m={name:"configuration"},p={class:"mt-md-5 mt-3 text-body"};function f(k,x,h,w,$,v){const n=l("RouterView");return t(),i("div",p,[o(n,null,{default:e(({Component:s,route:c})=>[o(_,{name:"fade2",mode:"out-in"},{default:e(()=>[(t(),a(u,null,{default:e(()=>[(t(),a(d(s),{key:c.path}))]),_:2},1024))]),_:2},1024)]),_:1})])}const B=r(m,[["render",f]]);export{B as default}; diff --git a/src/static/app/dist/assets/configurationList-BqKGJfyN.js b/src/static/app/dist/assets/configurationList-BF3DlWGJ.js similarity index 98% rename from src/static/app/dist/assets/configurationList-BqKGJfyN.js rename to src/static/app/dist/assets/configurationList-BF3DlWGJ.js index b54f037..08ed352 100644 --- a/src/static/app/dist/assets/configurationList-BqKGJfyN.js +++ b/src/static/app/dist/assets/configurationList-BF3DlWGJ.js @@ -1 +1 @@ -import{_ as D,D as M,g as I,a as i,c as a,b as t,d as r,w as S,n as m,t as u,f as v,i as _,e as y,m as U,v as V,p as B,k as p,r as O,q as K,s as w,j as G,o as R,x as W,F as k,h as C,W as q,G as $,T as F,y as z}from"./index-CfPziasH.js";import{L as x}from"./localeText-CyxQ0Kz3.js";import{_ as j}from"./protocolBadge-BwyLRUKo.js";import{C as J}from"./storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BeoP6Zsu.js";const N={name:"configurationCard",components:{ProtocolBadge:j,LocaleText:x},props:{c:{Name:String,Status:Boolean,PublicKey:String,PrivateKey:String},delay:String,display:String},data(){return{configurationToggling:!1}},setup(){return{dashboardConfigurationStore:M()}},methods:{toggle(){this.configurationToggling=!0,I("/api/toggleWireguardConfiguration",{configurationName:this.c.Name},s=>{s.status?this.dashboardConfigurationStore.newMessage("Server",`${this.c.Name} ${s.data?"is on":"is off"}`):this.dashboardConfigurationStore.newMessage("Server",s.message,"danger"),this.c.Status=s.data,this.configurationToggling=!1})}}},T=()=>{B(s=>({"7d032b58":s.delay}))},P=N.setup;N.setup=P?(s,e)=>(T(),P(s,e)):T;const E={class:"card conf_card rounded-3 shadow text-decoration-none"},H={class:"mb-0"},Y={class:"card-title mb-0 d-flex align-items-center gap-2"},A={class:"card-footer d-flex gap-2 flex-column"},Q={class:"row"},X={class:"d-flex gap-2 align-items-center"},Z={class:"text-muted"},tt={class:"mb-0 d-block d-lg-inline-block"},et={style:{"line-break":"anywhere"}},st={class:"form-check form-switch ms-auto"},ot=["for"],it={key:4,class:"spinner-border spinner-border-sm ms-2","aria-hidden":"true"},nt=["disabled","id"];function at(s,e,o,f,n,g){const c=p("ProtocolBadge"),l=p("RouterLink"),d=p("LocaleText");return i(),a("div",{class:m(["col-12",{"col-lg-6 col-xl-4":this.display==="Grid"}])},[t("div",E,[r(l,{to:"/configuration/"+o.c.Name+"/peers",class:"card-body d-flex align-items-center gap-3 flex-wrap text-decoration-none"},{default:S(()=>[t("h6",H,[t("span",{class:m(["dot",{active:o.c.Status}])},null,2)]),t("h6",Y,[t("samp",null,u(o.c.Name),1),t("small",null,[r(c,{protocol:o.c.Protocol,mini:!0},null,8,["protocol"])])]),e[2]||(e[2]=t("h6",{class:"mb-0 ms-auto"},[t("i",{class:"bi bi-chevron-right"})],-1))]),_:1},8,["to"]),t("div",A,[t("div",Q,[t("small",{class:m(["col-6",{"col-md-3":this.display==="List"}])},[e[3]||(e[3]=t("i",{class:"bi bi-arrow-down-up me-2"},null,-1)),v(u(o.c.DataUsage.Total>0?o.c.DataUsage.Total.toFixed(4):0)+" GB ",1)],2),t("small",{class:m(["text-primary-emphasis col-6",{"col-md-3":this.display==="List"}])},[e[4]||(e[4]=t("i",{class:"bi bi-arrow-down me-2"},null,-1)),v(u(o.c.DataUsage.Receive>0?o.c.DataUsage.Receive.toFixed(4):0)+" GB ",1)],2),t("small",{class:m(["text-success-emphasis col-6",{"col-md-3":this.display==="List"}])},[e[5]||(e[5]=t("i",{class:"bi bi-arrow-up me-2"},null,-1)),v(u(o.c.DataUsage.Sent>0?o.c.DataUsage.Sent.toFixed(4):0)+" GB ",1)],2),t("small",{class:m(["col-6",{"col-md-3 text-md-end ":this.display==="List"}])},[t("span",{class:m(["dot me-2",{active:o.c.ConnectedPeers>0}])},null,2),v(" "+u(o.c.ConnectedPeers)+" / "+u(o.c.TotalPeers)+" ",1),r(d,{t:"Peers"})],2)]),t("div",{class:m(["d-flex gap-2",[this.display==="Grid"?"flex-column":"gap-lg-3 flex-column flex-lg-row"]])},[t("div",X,[t("small",Z,[t("strong",null,[r(d,{t:"Public Key"})])]),t("small",tt,[t("samp",et,u(o.c.PublicKey),1)])]),t("div",st,[t("label",{class:"form-check-label",style:{cursor:"pointer"},for:"switch"+o.c.PrivateKey},[!o.c.Status&&this.configurationToggling?(i(),_(d,{key:0,t:"Turning Off..."})):o.c.Status&&this.configurationToggling?(i(),_(d,{key:1,t:"Turning On..."})):o.c.Status&&!this.configurationToggling?(i(),_(d,{key:2,t:"On"})):!o.c.Status&&!this.configurationToggling?(i(),_(d,{key:3,t:"Off"})):y("",!0),this.configurationToggling?(i(),a("span",it)):y("",!0)],8,ot),U(t("input",{class:"form-check-input",style:{cursor:"pointer"},disabled:this.configurationToggling,type:"checkbox",role:"switch",id:"switch"+o.c.PrivateKey,onChange:e[0]||(e[0]=L=>this.toggle()),"onUpdate:modelValue":e[1]||(e[1]=L=>o.c.Status=L)},null,40,nt),[[V,o.c.Status]])])],2)])])],2)}const rt=D(N,[["render",at],["__scopeId","data-v-dafd6275"]]),lt={class:"text-muted me-2"},ct={class:"fw-bold"},dt={__name:"storageMount",props:{mount:Object,align:Boolean,square:Boolean},setup(s){B(n=>({"2dc8ab7e":f.value}));const e=s,o=O(!1),f=K(()=>e.square?"40px":"25px");return(n,g)=>(i(),a("div",{class:"flex-grow-1 square rounded-3 border position-relative",onMouseenter:g[0]||(g[0]=c=>o.value=!0),onMouseleave:g[1]||(g[1]=c=>o.value=!1),style:w({"background-color":`rgb(25 135 84 / ${s.mount.percent}%)`})},[r(G,{name:"zoomReversed"},{default:S(()=>[o.value?(i(),a("div",{key:0,style:w([{"white-space":"nowrap"},{top:f.value}]),class:m(["floatingLabel z-3 border position-absolute d-block p-1 px-2 bg-body text-body rounded-3 border shadow d-flex",[s.align?"end-0":"start-0"]])},[t("small",lt,[t("samp",null,u(s.mount.mountPoint),1)]),t("small",ct,u(s.mount.percent)+"% ",1)],6)):y("",!0)]),_:1})],36))}},ut=D(dt,[["__scopeId","data-v-9509d7a0"]]),mt={class:"row text-body g-3 mb-5"},gt={class:"col-md-6 col-sm-12 col-xl-3"},ht={class:"d-flex align-items-center"},ft={class:"text-muted"},_t={class:"ms-auto"},pt={key:0},yt={key:1,class:"spinner-border spinner-border-sm"},bt={class:"progress",role:"progressbar",style:{height:"6px"}},St={class:"d-flex mt-2 gap-1"},vt={class:"col-md-6 col-sm-12 col-xl-3"},xt={class:"d-flex align-items-center"},wt={class:"text-muted"},kt={class:"ms-auto"},Ct={key:0},Lt={key:1,class:"spinner-border spinner-border-sm"},Dt={class:"progress",role:"progressbar",style:{height:"6px"}},$t={class:"d-flex mt-2 gap-1"},Nt={class:"col-md-6 col-sm-12 col-xl-3"},Tt={class:"d-flex align-items-center"},Pt={class:"text-muted"},Mt={class:"ms-auto"},It={key:0},Ut={key:1,class:"spinner-border spinner-border-sm"},Bt={class:"progress",role:"progressbar",style:{height:"6px"}},Kt={class:"col-md-6 col-sm-12 col-xl-3"},Gt={class:"d-flex align-items-center"},Vt={class:"text-muted"},Ot={class:"ms-auto"},Rt={key:0},Wt={key:1,class:"spinner-border spinner-border-sm"},qt={__name:"systemStatusWidget",setup(s){const e=M();let o=null;R(()=>{f(),o=setInterval(()=>{f()},5e3)}),W(()=>{clearInterval(o)});const f=()=>{I("/api/systemStatus",{},g=>{e.SystemStatus=g.data})},n=K(()=>e.SystemStatus);return(g,c)=>(i(),a("div",mt,[t("div",gt,[t("div",ht,[t("h6",ft,[c[0]||(c[0]=t("i",{class:"bi bi-cpu-fill me-2"},null,-1)),r(x,{t:"CPU"})]),t("h6",_t,[n.value?(i(),a("span",pt,u(n.value.CPU.cpu_percent)+"% ",1)):(i(),a("span",yt))])]),t("div",bt,[t("div",{class:"progress-bar",style:w({width:`${n.value?.CPU.cpu_percent}%`})},null,4)]),t("div",St,[(i(!0),a(k,null,C(n.value?.CPU.cpu_percent_per_cpu,(l,d)=>(i(),_(J,{key:d,align:d+1>Math.round(n.value?.CPU.cpu_percent_per_cpu.length/2),core_number:d,percentage:l},null,8,["align","core_number","percentage"]))),128))])]),t("div",vt,[t("div",xt,[t("h6",wt,[c[1]||(c[1]=t("i",{class:"bi bi-device-ssd-fill me-2"},null,-1)),r(x,{t:"Storage"})]),t("h6",kt,[n.value?(i(),a("span",Ct,u(n.value.Disks.find(l=>l.mountPoint==="/")?n.value?.Disks.find(l=>l.mountPoint==="/").percent:n.value?.Disks[0].percent)+"% ",1)):(i(),a("span",Lt))])]),t("div",Dt,[t("div",{class:"progress-bar bg-success",style:w({width:`${n.value?.Disks.find(l=>l.mountPoint==="/").percent}%`})},null,4)]),t("div",$t,[n.value?(i(!0),a(k,{key:0},C(n.value?.Disks,(l,d)=>(i(),_(ut,{key:l.mountPoint,align:d+1>Math.round(n.value?.Disks.length/2),mount:l},null,8,["align","mount"]))),128)):y("",!0)])]),t("div",Nt,[t("div",Tt,[t("h6",Pt,[c[2]||(c[2]=t("i",{class:"bi bi-memory me-2"},null,-1)),r(x,{t:"Memory"})]),t("h6",Mt,[n.value?(i(),a("span",It,u(n.value?.Memory.VirtualMemory.percent)+"% ",1)):(i(),a("span",Ut))])]),t("div",Bt,[t("div",{class:"progress-bar bg-info",style:w({width:`${n.value?.Memory.VirtualMemory.percent}%`})},null,4)])]),t("div",Kt,[t("div",Gt,[t("h6",Vt,[c[3]||(c[3]=t("i",{class:"bi bi-memory me-2"},null,-1)),r(x,{t:"Swap Memory"})]),t("h6",Ot,[n.value?(i(),a("span",Rt,u(n.value?.Memory.SwapMemory.percent)+"% ",1)):(i(),a("span",Wt))])]),c[4]||(c[4]=t("div",{class:"progress",role:"progressbar",style:{height:"6px"}},[t("div",{class:"progress-bar bg-warning",style:{width:"$ data?.Memory.SwapMemory.percent}%"}})],-1))])]))}},Ft=D(qt,[["__scopeId","data-v-c20f1a80"]]),zt={name:"configurationList",components:{SystemStatus:Ft,LocaleText:x,ConfigurationCard:rt},async setup(){return{wireguardConfigurationsStore:q()}},data(){return{configurationLoaded:!1,sort:{Name:$("Name"),Status:$("Status"),"DataUsage.Total":$("Total Usage")},currentSort:{key:"Name",order:"asc"},currentDisplay:"List",searchKey:""}},async mounted(){window.localStorage.getItem("ConfigurationListSort")?this.currentSort=JSON.parse(window.localStorage.getItem("ConfigurationListSort")):window.localStorage.setItem("ConfigurationListSort",JSON.stringify(this.currentSort)),window.localStorage.getItem("ConfigurationListDisplay")?this.currentDisplay=window.localStorage.getItem("ConfigurationListDisplay"):window.localStorage.setItem("ConfigurationListDisplay",this.currentDisplay),await this.wireguardConfigurationsStore.getConfigurations(),this.configurationLoaded=!0,this.wireguardConfigurationsStore.ConfigurationListInterval=setInterval(()=>{this.wireguardConfigurationsStore.getConfigurations()},1e4)},beforeUnmount(){clearInterval(this.wireguardConfigurationsStore.ConfigurationListInterval)},computed:{configurations(){return[...this.wireguardConfigurationsStore.Configurations].filter(s=>s.Name.toLowerCase().includes(this.searchKey)||s.PublicKey.includes(this.searchKey)||!this.searchKey).sort((s,e)=>this.currentSort.order==="desc"?this.dotNotation(s,this.currentSort.key)this.dotNotation(e,this.currentSort.key)?-1:0:this.dotNotation(s,this.currentSort.key)>this.dotNotation(e,this.currentSort.key)?1:this.dotNotation(s,this.currentSort.key)f&&f[n],s);return typeof o=="string"?o.toLowerCase():o},updateSort(s){this.currentSort.key===s?this.currentSort.order==="asc"?this.currentSort.order="desc":this.currentSort.order="asc":this.currentSort.key=s,window.localStorage.setItem("ConfigurationListSort",JSON.stringify(this.currentSort))},updateDisplay(s){this.currentDisplay!==s&&(this.currentDisplay=s,window.localStorage.setItem("ConfigurationListDisplay",this.currentDisplay))}}},jt={class:"mt-md-5 mt-3"},Jt={class:"container-fluid"},Et={class:"d-flex mb-4 configurationListTitle align-items-md-center gap-2 flex-column flex-md-row"},Ht={class:"text-body d-flex mb-0"},Yt={key:0,class:"text-body filter mb-3 d-flex gap-2 flex-column flex-md-row"},At={class:"d-flex align-items-center gap-3 align-items-center mb-3 mb-md-0"},Qt={class:"text-muted"},Xt={class:"d-flex ms-auto ms-lg-0"},Zt=["onClick"],te={class:"align-items-center gap-3 align-items-center mb-3 mb-md-0 d-none d-lg-flex"},ee={class:"text-muted"},se={class:"d-flex ms-auto ms-lg-0"},oe=["onClick"],ie={class:"d-flex align-items-center ms-md-auto"},ne={class:"row g-3 mb-2"},ae={class:"text-muted col-12",key:"noConfiguration"};function re(s,e,o,f,n,g){const c=p("SystemStatus"),l=p("LocaleText"),d=p("RouterLink"),L=p("ConfigurationCard");return i(),a("div",jt,[t("div",Jt,[r(c),t("div",Et,[t("h2",Ht,[r(l,{t:"WireGuard Configurations"})]),r(d,{to:"/new_configuration",class:"ms-md-auto py-2 text-decoration-none btn text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle"},{default:S(()=>[e[1]||(e[1]=t("i",{class:"bi bi-plus-circle me-2"},null,-1)),r(l,{t:"Configuration"})]),_:1}),r(d,{to:"/restore_configuration",class:"py-2 text-decoration-none btn text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle"},{default:S(()=>[e[2]||(e[2]=t("i",{class:"bi bi-clock-history me-2"},null,-1)),r(l,{t:"Restore"})]),_:1})]),r(G,{name:"fade"},{default:S(()=>[this.configurationLoaded?(i(),a("div",Yt,[t("div",At,[t("small",Qt,[r(l,{t:"Sort By"})]),t("div",Xt,[(i(!0),a(k,null,C(this.sort,(h,b)=>(i(),a("a",{role:"button",onClick:le=>g.updateSort(b),class:m([{"bg-primary-subtle text-primary-emphasis":this.currentSort.key===b},"px-2 py-1 rounded-3"])},[t("small",null,[this.currentSort.key===b?(i(),a("i",{key:0,class:m(["bi me-2",[this.currentSort.order==="asc"?"bi-sort-up":"bi-sort-down"]])},null,2)):y("",!0),v(u(h),1)])],10,Zt))),256))])]),t("div",te,[t("small",ee,[r(l,{t:"Display as"})]),t("div",se,[(i(),a(k,null,C([{name:"List",key:"list"},{name:"Grid",key:"grid"}],h=>t("a",{role:"button",onClick:b=>g.updateDisplay(h.name),class:m([{"bg-primary-subtle text-primary-emphasis":this.currentDisplay===h.name},"px-2 py-1 rounded-3"])},[t("small",null,[t("i",{class:m(["bi me-2","bi-"+h.key])},null,2),e[3]||(e[3]=v()),r(l,{t:h.name},null,8,["t"])])],10,oe)),64))])]),t("div",ie,[e[4]||(e[4]=t("label",{for:"configurationSearch",class:"text-muted"},[t("i",{class:"bi bi-search me-2"})],-1)),U(t("input",{class:"form-control form-control-sm rounded-3","onUpdate:modelValue":e[0]||(e[0]=h=>this.searchKey=h),id:"configurationSearch"},null,512),[[z,this.searchKey]])])])):y("",!0)]),_:1}),t("div",ne,[r(F,{name:"fade"},{default:S(()=>[this.configurationLoaded&&this.wireguardConfigurationsStore.Configurations.length===0?(i(),a("p",ae,[r(l,{t:"You don't have any WireGuard configurations yet. Please check the configuration folder or change it in Settings. By default the folder is /etc/wireguard."})])):this.configurationLoaded?(i(!0),a(k,{key:1},C(g.configurations,(h,b)=>(i(),_(L,{display:this.currentDisplay,delay:b*.03+"s",key:h.Name,c:h},null,8,["display","delay","c"]))),128)):y("",!0)]),_:1})])])])}const ge=D(zt,[["render",re],["__scopeId","data-v-ea61b607"]]);export{ge as default}; +import{_ as D,D as M,g as I,a as i,c as a,b as t,d as r,w as S,n as m,t as u,f as v,i as _,e as y,m as U,v as V,p as B,k as p,r as O,q as K,s as w,j as G,o as R,x as W,F as k,h as C,W as q,G as $,T as F,y as z}from"./index-AzYVPyhh.js";import{L as x}from"./localeText-qJNpKS91.js";import{_ as j}from"./protocolBadge-Cbmuyguj.js";import{C as J}from"./storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BOX6BWGk.js";const N={name:"configurationCard",components:{ProtocolBadge:j,LocaleText:x},props:{c:{Name:String,Status:Boolean,PublicKey:String,PrivateKey:String},delay:String,display:String},data(){return{configurationToggling:!1}},setup(){return{dashboardConfigurationStore:M()}},methods:{toggle(){this.configurationToggling=!0,I("/api/toggleWireguardConfiguration",{configurationName:this.c.Name},s=>{s.status?this.dashboardConfigurationStore.newMessage("Server",`${this.c.Name} ${s.data?"is on":"is off"}`):this.dashboardConfigurationStore.newMessage("Server",s.message,"danger"),this.c.Status=s.data,this.configurationToggling=!1})}}},T=()=>{B(s=>({"7d032b58":s.delay}))},P=N.setup;N.setup=P?(s,e)=>(T(),P(s,e)):T;const E={class:"card conf_card rounded-3 shadow text-decoration-none"},H={class:"mb-0"},Y={class:"card-title mb-0 d-flex align-items-center gap-2"},A={class:"card-footer d-flex gap-2 flex-column"},Q={class:"row"},X={class:"d-flex gap-2 align-items-center"},Z={class:"text-muted"},tt={class:"mb-0 d-block d-lg-inline-block"},et={style:{"line-break":"anywhere"}},st={class:"form-check form-switch ms-auto"},ot=["for"],it={key:4,class:"spinner-border spinner-border-sm ms-2","aria-hidden":"true"},nt=["disabled","id"];function at(s,e,o,f,n,g){const c=p("ProtocolBadge"),l=p("RouterLink"),d=p("LocaleText");return i(),a("div",{class:m(["col-12",{"col-lg-6 col-xl-4":this.display==="Grid"}])},[t("div",E,[r(l,{to:"/configuration/"+o.c.Name+"/peers",class:"card-body d-flex align-items-center gap-3 flex-wrap text-decoration-none"},{default:S(()=>[t("h6",H,[t("span",{class:m(["dot",{active:o.c.Status}])},null,2)]),t("h6",Y,[t("samp",null,u(o.c.Name),1),t("small",null,[r(c,{protocol:o.c.Protocol,mini:!0},null,8,["protocol"])])]),e[2]||(e[2]=t("h6",{class:"mb-0 ms-auto"},[t("i",{class:"bi bi-chevron-right"})],-1))]),_:1},8,["to"]),t("div",A,[t("div",Q,[t("small",{class:m(["col-6",{"col-md-3":this.display==="List"}])},[e[3]||(e[3]=t("i",{class:"bi bi-arrow-down-up me-2"},null,-1)),v(u(o.c.DataUsage.Total>0?o.c.DataUsage.Total.toFixed(4):0)+" GB ",1)],2),t("small",{class:m(["text-primary-emphasis col-6",{"col-md-3":this.display==="List"}])},[e[4]||(e[4]=t("i",{class:"bi bi-arrow-down me-2"},null,-1)),v(u(o.c.DataUsage.Receive>0?o.c.DataUsage.Receive.toFixed(4):0)+" GB ",1)],2),t("small",{class:m(["text-success-emphasis col-6",{"col-md-3":this.display==="List"}])},[e[5]||(e[5]=t("i",{class:"bi bi-arrow-up me-2"},null,-1)),v(u(o.c.DataUsage.Sent>0?o.c.DataUsage.Sent.toFixed(4):0)+" GB ",1)],2),t("small",{class:m(["col-6",{"col-md-3 text-md-end ":this.display==="List"}])},[t("span",{class:m(["dot me-2",{active:o.c.ConnectedPeers>0}])},null,2),v(" "+u(o.c.ConnectedPeers)+" / "+u(o.c.TotalPeers)+" ",1),r(d,{t:"Peers"})],2)]),t("div",{class:m(["d-flex gap-2",[this.display==="Grid"?"flex-column":"gap-lg-3 flex-column flex-lg-row"]])},[t("div",X,[t("small",Z,[t("strong",null,[r(d,{t:"Public Key"})])]),t("small",tt,[t("samp",et,u(o.c.PublicKey),1)])]),t("div",st,[t("label",{class:"form-check-label",style:{cursor:"pointer"},for:"switch"+o.c.PrivateKey},[!o.c.Status&&this.configurationToggling?(i(),_(d,{key:0,t:"Turning Off..."})):o.c.Status&&this.configurationToggling?(i(),_(d,{key:1,t:"Turning On..."})):o.c.Status&&!this.configurationToggling?(i(),_(d,{key:2,t:"On"})):!o.c.Status&&!this.configurationToggling?(i(),_(d,{key:3,t:"Off"})):y("",!0),this.configurationToggling?(i(),a("span",it)):y("",!0)],8,ot),U(t("input",{class:"form-check-input",style:{cursor:"pointer"},disabled:this.configurationToggling,type:"checkbox",role:"switch",id:"switch"+o.c.PrivateKey,onChange:e[0]||(e[0]=L=>this.toggle()),"onUpdate:modelValue":e[1]||(e[1]=L=>o.c.Status=L)},null,40,nt),[[V,o.c.Status]])])],2)])])],2)}const rt=D(N,[["render",at],["__scopeId","data-v-dafd6275"]]),lt={class:"text-muted me-2"},ct={class:"fw-bold"},dt={__name:"storageMount",props:{mount:Object,align:Boolean,square:Boolean},setup(s){B(n=>({"2dc8ab7e":f.value}));const e=s,o=O(!1),f=K(()=>e.square?"40px":"25px");return(n,g)=>(i(),a("div",{class:"flex-grow-1 square rounded-3 border position-relative",onMouseenter:g[0]||(g[0]=c=>o.value=!0),onMouseleave:g[1]||(g[1]=c=>o.value=!1),style:w({"background-color":`rgb(25 135 84 / ${s.mount.percent}%)`})},[r(G,{name:"zoomReversed"},{default:S(()=>[o.value?(i(),a("div",{key:0,style:w([{"white-space":"nowrap"},{top:f.value}]),class:m(["floatingLabel z-3 border position-absolute d-block p-1 px-2 bg-body text-body rounded-3 border shadow d-flex",[s.align?"end-0":"start-0"]])},[t("small",lt,[t("samp",null,u(s.mount.mountPoint),1)]),t("small",ct,u(s.mount.percent)+"% ",1)],6)):y("",!0)]),_:1})],36))}},ut=D(dt,[["__scopeId","data-v-9509d7a0"]]),mt={class:"row text-body g-3 mb-5"},gt={class:"col-md-6 col-sm-12 col-xl-3"},ht={class:"d-flex align-items-center"},ft={class:"text-muted"},_t={class:"ms-auto"},pt={key:0},yt={key:1,class:"spinner-border spinner-border-sm"},bt={class:"progress",role:"progressbar",style:{height:"6px"}},St={class:"d-flex mt-2 gap-1"},vt={class:"col-md-6 col-sm-12 col-xl-3"},xt={class:"d-flex align-items-center"},wt={class:"text-muted"},kt={class:"ms-auto"},Ct={key:0},Lt={key:1,class:"spinner-border spinner-border-sm"},Dt={class:"progress",role:"progressbar",style:{height:"6px"}},$t={class:"d-flex mt-2 gap-1"},Nt={class:"col-md-6 col-sm-12 col-xl-3"},Tt={class:"d-flex align-items-center"},Pt={class:"text-muted"},Mt={class:"ms-auto"},It={key:0},Ut={key:1,class:"spinner-border spinner-border-sm"},Bt={class:"progress",role:"progressbar",style:{height:"6px"}},Kt={class:"col-md-6 col-sm-12 col-xl-3"},Gt={class:"d-flex align-items-center"},Vt={class:"text-muted"},Ot={class:"ms-auto"},Rt={key:0},Wt={key:1,class:"spinner-border spinner-border-sm"},qt={__name:"systemStatusWidget",setup(s){const e=M();let o=null;R(()=>{f(),o=setInterval(()=>{f()},5e3)}),W(()=>{clearInterval(o)});const f=()=>{I("/api/systemStatus",{},g=>{e.SystemStatus=g.data})},n=K(()=>e.SystemStatus);return(g,c)=>(i(),a("div",mt,[t("div",gt,[t("div",ht,[t("h6",ft,[c[0]||(c[0]=t("i",{class:"bi bi-cpu-fill me-2"},null,-1)),r(x,{t:"CPU"})]),t("h6",_t,[n.value?(i(),a("span",pt,u(n.value.CPU.cpu_percent)+"% ",1)):(i(),a("span",yt))])]),t("div",bt,[t("div",{class:"progress-bar",style:w({width:`${n.value?.CPU.cpu_percent}%`})},null,4)]),t("div",St,[(i(!0),a(k,null,C(n.value?.CPU.cpu_percent_per_cpu,(l,d)=>(i(),_(J,{key:d,align:d+1>Math.round(n.value?.CPU.cpu_percent_per_cpu.length/2),core_number:d,percentage:l},null,8,["align","core_number","percentage"]))),128))])]),t("div",vt,[t("div",xt,[t("h6",wt,[c[1]||(c[1]=t("i",{class:"bi bi-device-ssd-fill me-2"},null,-1)),r(x,{t:"Storage"})]),t("h6",kt,[n.value?(i(),a("span",Ct,u(n.value.Disks.find(l=>l.mountPoint==="/")?n.value?.Disks.find(l=>l.mountPoint==="/").percent:n.value?.Disks[0].percent)+"% ",1)):(i(),a("span",Lt))])]),t("div",Dt,[t("div",{class:"progress-bar bg-success",style:w({width:`${n.value?.Disks.find(l=>l.mountPoint==="/").percent}%`})},null,4)]),t("div",$t,[n.value?(i(!0),a(k,{key:0},C(n.value?.Disks,(l,d)=>(i(),_(ut,{key:l.mountPoint,align:d+1>Math.round(n.value?.Disks.length/2),mount:l},null,8,["align","mount"]))),128)):y("",!0)])]),t("div",Nt,[t("div",Tt,[t("h6",Pt,[c[2]||(c[2]=t("i",{class:"bi bi-memory me-2"},null,-1)),r(x,{t:"Memory"})]),t("h6",Mt,[n.value?(i(),a("span",It,u(n.value?.Memory.VirtualMemory.percent)+"% ",1)):(i(),a("span",Ut))])]),t("div",Bt,[t("div",{class:"progress-bar bg-info",style:w({width:`${n.value?.Memory.VirtualMemory.percent}%`})},null,4)])]),t("div",Kt,[t("div",Gt,[t("h6",Vt,[c[3]||(c[3]=t("i",{class:"bi bi-memory me-2"},null,-1)),r(x,{t:"Swap Memory"})]),t("h6",Ot,[n.value?(i(),a("span",Rt,u(n.value?.Memory.SwapMemory.percent)+"% ",1)):(i(),a("span",Wt))])]),c[4]||(c[4]=t("div",{class:"progress",role:"progressbar",style:{height:"6px"}},[t("div",{class:"progress-bar bg-warning",style:{width:"$ data?.Memory.SwapMemory.percent}%"}})],-1))])]))}},Ft=D(qt,[["__scopeId","data-v-c20f1a80"]]),zt={name:"configurationList",components:{SystemStatus:Ft,LocaleText:x,ConfigurationCard:rt},async setup(){return{wireguardConfigurationsStore:q()}},data(){return{configurationLoaded:!1,sort:{Name:$("Name"),Status:$("Status"),"DataUsage.Total":$("Total Usage")},currentSort:{key:"Name",order:"asc"},currentDisplay:"List",searchKey:""}},async mounted(){window.localStorage.getItem("ConfigurationListSort")?this.currentSort=JSON.parse(window.localStorage.getItem("ConfigurationListSort")):window.localStorage.setItem("ConfigurationListSort",JSON.stringify(this.currentSort)),window.localStorage.getItem("ConfigurationListDisplay")?this.currentDisplay=window.localStorage.getItem("ConfigurationListDisplay"):window.localStorage.setItem("ConfigurationListDisplay",this.currentDisplay),await this.wireguardConfigurationsStore.getConfigurations(),this.configurationLoaded=!0,this.wireguardConfigurationsStore.ConfigurationListInterval=setInterval(()=>{this.wireguardConfigurationsStore.getConfigurations()},1e4)},beforeUnmount(){clearInterval(this.wireguardConfigurationsStore.ConfigurationListInterval)},computed:{configurations(){return[...this.wireguardConfigurationsStore.Configurations].filter(s=>s.Name.toLowerCase().includes(this.searchKey)||s.PublicKey.includes(this.searchKey)||!this.searchKey).sort((s,e)=>this.currentSort.order==="desc"?this.dotNotation(s,this.currentSort.key)this.dotNotation(e,this.currentSort.key)?-1:0:this.dotNotation(s,this.currentSort.key)>this.dotNotation(e,this.currentSort.key)?1:this.dotNotation(s,this.currentSort.key)f&&f[n],s);return typeof o=="string"?o.toLowerCase():o},updateSort(s){this.currentSort.key===s?this.currentSort.order==="asc"?this.currentSort.order="desc":this.currentSort.order="asc":this.currentSort.key=s,window.localStorage.setItem("ConfigurationListSort",JSON.stringify(this.currentSort))},updateDisplay(s){this.currentDisplay!==s&&(this.currentDisplay=s,window.localStorage.setItem("ConfigurationListDisplay",this.currentDisplay))}}},jt={class:"mt-md-5 mt-3"},Jt={class:"container-fluid"},Et={class:"d-flex mb-4 configurationListTitle align-items-md-center gap-2 flex-column flex-md-row"},Ht={class:"text-body d-flex mb-0"},Yt={key:0,class:"text-body filter mb-3 d-flex gap-2 flex-column flex-md-row"},At={class:"d-flex align-items-center gap-3 align-items-center mb-3 mb-md-0"},Qt={class:"text-muted"},Xt={class:"d-flex ms-auto ms-lg-0"},Zt=["onClick"],te={class:"align-items-center gap-3 align-items-center mb-3 mb-md-0 d-none d-lg-flex"},ee={class:"text-muted"},se={class:"d-flex ms-auto ms-lg-0"},oe=["onClick"],ie={class:"d-flex align-items-center ms-md-auto"},ne={class:"row g-3 mb-2"},ae={class:"text-muted col-12",key:"noConfiguration"};function re(s,e,o,f,n,g){const c=p("SystemStatus"),l=p("LocaleText"),d=p("RouterLink"),L=p("ConfigurationCard");return i(),a("div",jt,[t("div",Jt,[r(c),t("div",Et,[t("h2",Ht,[r(l,{t:"WireGuard Configurations"})]),r(d,{to:"/new_configuration",class:"ms-md-auto py-2 text-decoration-none btn text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle"},{default:S(()=>[e[1]||(e[1]=t("i",{class:"bi bi-plus-circle me-2"},null,-1)),r(l,{t:"Configuration"})]),_:1}),r(d,{to:"/restore_configuration",class:"py-2 text-decoration-none btn text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle"},{default:S(()=>[e[2]||(e[2]=t("i",{class:"bi bi-clock-history me-2"},null,-1)),r(l,{t:"Restore"})]),_:1})]),r(G,{name:"fade"},{default:S(()=>[this.configurationLoaded?(i(),a("div",Yt,[t("div",At,[t("small",Qt,[r(l,{t:"Sort By"})]),t("div",Xt,[(i(!0),a(k,null,C(this.sort,(h,b)=>(i(),a("a",{role:"button",onClick:le=>g.updateSort(b),class:m([{"bg-primary-subtle text-primary-emphasis":this.currentSort.key===b},"px-2 py-1 rounded-3"])},[t("small",null,[this.currentSort.key===b?(i(),a("i",{key:0,class:m(["bi me-2",[this.currentSort.order==="asc"?"bi-sort-up":"bi-sort-down"]])},null,2)):y("",!0),v(u(h),1)])],10,Zt))),256))])]),t("div",te,[t("small",ee,[r(l,{t:"Display as"})]),t("div",se,[(i(),a(k,null,C([{name:"List",key:"list"},{name:"Grid",key:"grid"}],h=>t("a",{role:"button",onClick:b=>g.updateDisplay(h.name),class:m([{"bg-primary-subtle text-primary-emphasis":this.currentDisplay===h.name},"px-2 py-1 rounded-3"])},[t("small",null,[t("i",{class:m(["bi me-2","bi-"+h.key])},null,2),e[3]||(e[3]=v()),r(l,{t:h.name},null,8,["t"])])],10,oe)),64))])]),t("div",ie,[e[4]||(e[4]=t("label",{for:"configurationSearch",class:"text-muted"},[t("i",{class:"bi bi-search me-2"})],-1)),U(t("input",{class:"form-control form-control-sm rounded-3","onUpdate:modelValue":e[0]||(e[0]=h=>this.searchKey=h),id:"configurationSearch"},null,512),[[z,this.searchKey]])])])):y("",!0)]),_:1}),t("div",ne,[r(F,{name:"fade"},{default:S(()=>[this.configurationLoaded&&this.wireguardConfigurationsStore.Configurations.length===0?(i(),a("p",ae,[r(l,{t:"You don't have any WireGuard configurations yet. Please check the configuration folder or change it in Settings. By default the folder is /etc/wireguard."})])):this.configurationLoaded?(i(!0),a(k,{key:1},C(g.configurations,(h,b)=>(i(),_(L,{display:this.currentDisplay,delay:b*.03+"s",key:h.Name,c:h},null,8,["display","delay","c"]))),128)):y("",!0)]),_:1})])])])}const ge=D(zt,[["render",re],["__scopeId","data-v-ea61b607"]]);export{ge as default}; diff --git a/src/static/app/dist/assets/dayjs.min-C4BEB1lt.js b/src/static/app/dist/assets/dayjs.min-DO3nadR-.js similarity index 99% rename from src/static/app/dist/assets/dayjs.min-C4BEB1lt.js rename to src/static/app/dist/assets/dayjs.min-DO3nadR-.js index 2e3df77..6659428 100644 --- a/src/static/app/dist/assets/dayjs.min-C4BEB1lt.js +++ b/src/static/app/dist/assets/dayjs.min-DO3nadR-.js @@ -1 +1 @@ -import{a0 as Q,a1 as K}from"./index-CfPziasH.js";var E={exports:{}};(function(V,X){(function(W,k){V.exports=k()})(Q,function(){var W=1e3,k=6e4,N=36e5,A="millisecond",S="second",w="minute",O="hour",M="day",T="week",m="month",U="quarter",v="year",_="date",J="Invalid Date",q=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,B=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,G={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(s){var n=["th","st","nd","rd"],t=s%100;return"["+s+(n[(t-20)%10]||n[t]||n[0])+"]"}},I=function(s,n,t){var r=String(s);return!r||r.length>=n?s:""+Array(n+1-r.length).join(t)+s},P={s:I,z:function(s){var n=-s.utcOffset(),t=Math.abs(n),r=Math.floor(t/60),e=t%60;return(n<=0?"+":"-")+I(r,2,"0")+":"+I(e,2,"0")},m:function s(n,t){if(n.date()1)return s(u[0])}else{var o=n.name;D[o]=n,e=o}return!r&&e&&(x=e),e||!r&&x},f=function(s,n){if(F(s))return s.clone();var t=typeof n=="object"?n:{};return t.date=s,t.args=arguments,new C(t)},a=P;a.l=j,a.i=F,a.w=function(s,n){return f(s,{locale:n.$L,utc:n.$u,x:n.$x,$offset:n.$offset})};var C=function(){function s(t){this.$L=j(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[Z]=!0}var n=s.prototype;return n.parse=function(t){this.$d=function(r){var e=r.date,i=r.utc;if(e===null)return new Date(NaN);if(a.u(e))return new Date;if(e instanceof Date)return new Date(e);if(typeof e=="string"&&!/Z$/i.test(e)){var u=e.match(q);if(u){var o=u[2]-1||0,c=(u[7]||"0").substring(0,3);return i?new Date(Date.UTC(u[1],o,u[3]||1,u[4]||0,u[5]||0,u[6]||0,c)):new Date(u[1],o,u[3]||1,u[4]||0,u[5]||0,u[6]||0,c)}}return new Date(e)}(t),this.init()},n.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},n.$utils=function(){return a},n.isValid=function(){return this.$d.toString()!==J},n.isSame=function(t,r){var e=f(t);return this.startOf(r)<=e&&e<=this.endOf(r)},n.isAfter=function(t,r){return f(t)=n?s:""+Array(n+1-r.length).join(t)+s},P={s:I,z:function(s){var n=-s.utcOffset(),t=Math.abs(n),r=Math.floor(t/60),e=t%60;return(n<=0?"+":"-")+I(r,2,"0")+":"+I(e,2,"0")},m:function s(n,t){if(n.date()1)return s(u[0])}else{var o=n.name;D[o]=n,e=o}return!r&&e&&(x=e),e||!r&&x},f=function(s,n){if(F(s))return s.clone();var t=typeof n=="object"?n:{};return t.date=s,t.args=arguments,new C(t)},a=P;a.l=j,a.i=F,a.w=function(s,n){return f(s,{locale:n.$L,utc:n.$u,x:n.$x,$offset:n.$offset})};var C=function(){function s(t){this.$L=j(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[Z]=!0}var n=s.prototype;return n.parse=function(t){this.$d=function(r){var e=r.date,i=r.utc;if(e===null)return new Date(NaN);if(a.u(e))return new Date;if(e instanceof Date)return new Date(e);if(typeof e=="string"&&!/Z$/i.test(e)){var u=e.match(q);if(u){var o=u[2]-1||0,c=(u[7]||"0").substring(0,3);return i?new Date(Date.UTC(u[1],o,u[3]||1,u[4]||0,u[5]||0,u[6]||0,c)):new Date(u[1],o,u[3]||1,u[4]||0,u[5]||0,u[6]||0,c)}}return new Date(e)}(t),this.init()},n.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},n.$utils=function(){return a},n.isValid=function(){return this.$d.toString()!==J},n.isSame=function(t,r){var e=f(t);return this.startOf(r)<=e&&e<=this.endOf(r)},n.isAfter=function(t,r){return f(t){clearInterval(u.Peers.RefreshInterval),h.value=!0,W("/api/deleteWireguardConfiguration",{ConfigurationName:p},k=>{k.status?(f.push("/"),u.newMessage("Server","Configuration deleted","success")):h.value=!1})},b=x(!0),y=x([]),w=()=>{b.value=!0,M("/api/getWireguardConfigurationBackup",{configurationName:p},k=>{y.value=k.data,b.value=!1})};j(()=>{w()});const _=d;return(k,r)=>(c(),v("div",le,[e("div",de,[e("div",re,[e("div",ue,[e("div",ce,[e("h5",ge,[o(i,{t:"Are you sure to delete this configuration?"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:r[0]||(r[0]=n=>_("close"))})]),e("div",fe,[e("p",me,[o(i,{t:"Once you deleted this configuration:"})]),e("ul",null,[e("li",null,[o(i,{t:"All connected peers will get disconnected"})]),e("li",null,[o(i,{t:"Both configuration file (.conf) and database table related to this configuration will get deleted"})])]),e("div",{class:$(["alert",[b.value?"alert-secondary":y.value.length>0?"alert-success":"alert-danger"]])},[b.value?(c(),v("div",be,[r[5]||(r[5]=e("i",{class:"bi bi-search me-2"},null,-1)),o(i,{t:"Checking backups..."})])):y.value.length>0?(c(),v("div",ve,[r[6]||(r[6]=e("i",{class:"bi bi-check-circle-fill me-2"},null,-1)),o(i,{t:"This configuration have "+y.value.length+" backups"},null,8,["t"])])):(c(),v("div",pe,[r[9]||(r[9]=e("i",{class:"bi bi-x-circle-fill me-2"},null,-1)),o(i,{t:"This configuration have no backup"}),e("a",{role:"button",onClick:r[1]||(r[1]=n=>_("backup")),class:"ms-auto btn btn-sm btn-primary rounded-3"},[r[7]||(r[7]=e("i",{class:"bi bi-clock-history me-2"},null,-1)),o(i,{t:"Backup"})]),e("a",{role:"button",onClick:r[2]||(r[2]=n=>w()),class:"btn btn-sm btn-primary rounded-3"},r[8]||(r[8]=[e("i",{class:"bi bi-arrow-clockwise"},null,-1)]))]))],2),r[11]||(r[11]=e("hr",null,null,-1)),e("p",null,[o(i,{t:"If you're sure, please type in the configuration name below and click Delete"})]),B(e("input",{class:"form-control rounded-3 mb-3",placeholder:I(p),"onUpdate:modelValue":r[3]||(r[3]=n=>s.value=n),type:"text"},null,8,he),[[P,s.value]]),e("button",{class:"btn btn-danger w-100",onClick:r[4]||(r[4]=n=>g()),disabled:s.value!==I(p)||h.value},[r[10]||(r[10]=e("i",{class:"bi bi-trash-fill me-2 rounded-3"},null,-1)),h.value?(c(),N(i,{key:1,t:"Deleting..."})):(c(),N(i,{key:0,t:"Delete"}))],8,ye)])])])])]))}},we={class:"card my-0 rounded-3"},_e={class:"card-body position-relative"},Ce={key:0,class:"position-absolute w-100 h-100 confirmationContainer start-0 top-0 rounded-3 d-flex p-2"},ke={class:"m-auto"},Se={class:"d-flex gap-2 align-items-center justify-content-center"},Ne=["disabled"],$e=["disabled"],Be={key:0,class:"position-absolute w-100 h-100 confirmationContainer start-0 top-0 rounded-3 d-flex p-2"},Re={class:"m-auto"},Pe={class:"d-flex gap-2 align-items-center justify-content-center"},De=["disabled"],We=["disabled"],Le={class:"d-flex gap-3"},Ve={class:"d-flex flex-column"},He={class:"text-muted"},Me={class:"d-flex flex-column"},Oe={class:"text-muted"},ze={class:"d-flex gap-2 align-items-center ms-auto"},Ie={class:"card rounded-3"},Te={key:0,class:"card-body"},Ke=["value"],Fe={class:"d-flex"},Ae={__name:"backup",props:["b","delay"],emits:["refresh","refreshPeersList"],setup(l,{emit:d}){Q(r=>({b32c1fd8:_.value}));const t=l,p=x(!1),s=x(!1),f=F(),u=d,h=O(),g=x(!1),b=()=>{g.value=!0,W("/api/deleteWireguardConfigurationBackup",{ConfigurationName:f.params.id,BackupFileName:t.b.filename},r=>{g.value=!1,r.status?(u("refresh"),h.newMessage("Server","Backup deleted","success")):h.newMessage("Server","Backup failed to delete","danger")})},y=()=>{g.value=!0,W("/api/restoreWireguardConfigurationBackup",{ConfigurationName:f.params.id,BackupFileName:t.b.filename},r=>{g.value=!1,s.value=!1,r.status?(u("refreshPeersList"),h.newMessage("Server","Backup restored with "+t.b.filename,"success")):h.newMessage("Server","Backup failed to restore","danger")})},w=()=>{M("/api/downloadWireguardConfigurationBackup",{configurationName:f.params.id,backupFileName:t.b.filename},r=>{r.status&&window.open(`/fileDownload?file=${r.data}`,"_blank")})},_=X(()=>t.delay+"s"),k=x(!1);return(r,n)=>(c(),v("div",we,[e("div",_e,[o(Y,{name:"zoomReversed"},{default:T(()=>[p.value?(c(),v("div",Ce,[e("div",ke,[e("h5",null,[o(i,{t:"Are you sure to delete this backup?"})]),e("div",Se,[e("button",{class:"btn btn-danger rounded-3",disabled:g.value,onClick:n[0]||(n[0]=C=>b())},[o(i,{t:"Yes"})],8,Ne),e("button",{onClick:n[1]||(n[1]=C=>p.value=!1),disabled:g.value,class:"btn bg-secondary-subtle text-secondary-emphasis border-secondary-subtle rounded-3"},[o(i,{t:"No"})],8,$e)])])])):S("",!0)]),_:1}),o(Y,{name:"zoomReversed"},{default:T(()=>[s.value?(c(),v("div",Be,[e("div",Re,[e("h5",null,[o(i,{t:"Are you sure to restore this backup?"})]),e("div",Pe,[e("button",{disabled:g.value,onClick:n[2]||(n[2]=C=>y()),class:"btn btn-success rounded-3"},[o(i,{t:"Yes"})],8,De),e("button",{onClick:n[3]||(n[3]=C=>s.value=!1),disabled:g.value,class:"btn bg-secondary-subtle text-secondary-emphasis border-secondary-subtle rounded-3"},[o(i,{t:"No"})],8,We)])])])):S("",!0)]),_:1}),e("div",Le,[e("div",Ve,[e("small",He,[o(i,{t:"Backup"})]),e("samp",null,D(l.b.filename),1)]),e("div",Me,[e("small",Oe,[o(i,{t:"Backup Date"})]),V(" "+D(I(ie)(l.b.backupDate,"YYYYMMDDHHmmss").format("YYYY-MM-DD HH:mm:ss")),1)]),e("div",ze,[e("button",{onClick:n[4]||(n[4]=C=>w()),class:"btn bg-primary-subtle text-primary-emphasis border-primary-subtle rounded-3 btn-sm"},n[8]||(n[8]=[e("i",{class:"bi bi-download"},null,-1)])),e("button",{onClick:n[5]||(n[5]=C=>s.value=!0),class:"btn bg-warning-subtle text-warning-emphasis border-warning-subtle rounded-3 btn-sm"},n[9]||(n[9]=[e("i",{class:"bi bi-clock-history"},null,-1)])),e("button",{onClick:n[6]||(n[6]=C=>p.value=!0),class:"btn bg-danger-subtle text-danger-emphasis border-danger-subtle rounded-3 btn-sm"},n[10]||(n[10]=[e("i",{class:"bi bi-trash-fill"},null,-1)]))])]),n[14]||(n[14]=e("hr",null,null,-1)),e("div",Ie,[e("a",{role:"button",class:$(["card-header d-flex text-decoration-none align-items-center",{"border-bottom-0":!k.value}]),style:{cursor:"pointer"},onClick:n[7]||(n[7]=C=>k.value=!k.value)},[e("small",null,[n[11]||(n[11]=V(".conf ")),o(i,{t:"File"})]),n[12]||(n[12]=e("i",{class:"bi bi-chevron-down ms-auto"},null,-1))],2),k.value?(c(),v("div",Te,[e("textarea",{class:"form-control rounded-3",value:l.b.content,disabled:"",style:{height:"300px","font-family":"var(--bs-font-monospace),sans-serif !important"}},null,8,Ke)])):S("",!0)]),n[15]||(n[15]=e("hr",null,null,-1)),e("div",Fe,[e("span",null,[n[13]||(n[13]=e("i",{class:"bi bi-database me-1"},null,-1)),o(i,{t:"Database File"})]),e("i",{class:$(["bi ms-auto",[l.b.database?"text-success bi-check-circle-fill":"text-danger bi-x-circle-fill"]])},null,2)])])]))}},Ue=z(Ae,[["__scopeId","data-v-9f0c0156"]]),Je={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll",ref:"editConfigurationContainer"},je={class:"d-flex h-100 w-100"},Ye={class:"modal-dialog-centered dashboardModal w-100 h-100 overflow-x-scroll flex-column gap-3 mx-3"},Ee={class:"my-5 d-flex gap-3 flex-column position-relative"},Ge={class:"title"},qe={class:"d-flex mb-3"},Ze={class:"mb-0"},Qe={class:"position-relative d-flex flex-column gap-3"},Xe={class:"text-center title",key:"spinner"},et={class:"card my-0 rounded-3",key:"noBackups"},tt={class:"card-body text-center text-muted"},st={__name:"configurationBackupRestore",emits:["close","refreshPeersList"],setup(l,{emit:d}){const t=F(),p=x([]),s=x(!0),f=d;j(()=>{u()});const u=()=>{s.value=!0,M("/api/getWireguardConfigurationBackup",{configurationName:t.params.id},g=>{p.value=g.data,s.value=!1})},h=()=>{M("/api/createWireguardConfigurationBackup",{configurationName:t.params.id},g=>{p.value=g.data,s.value=!1})};return(g,b)=>(c(),v("div",Je,[e("div",je,[e("div",Ye,[e("div",Ee,[e("div",Ge,[e("div",qe,[e("h4",Ze,[o(i,{t:"Backup & Restore"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:b[0]||(b[0]=y=>g.$emit("close"))})]),e("button",{onClick:b[1]||(b[1]=y=>h()),class:"btn bg-primary-subtle text-primary-emphasis border-primary-subtle rounded-3 w-100"},[b[4]||(b[4]=e("i",{class:"bi bi-plus-circle-fill me-2"},null,-1)),o(i,{t:"Create Backup"})])]),e("div",Qe,[o(G,{name:"list1"},{default:T(()=>[s.value&&p.value.length===0?(c(),v("div",Xe,b[5]||(b[5]=[e("div",{class:"spinner-border"},null,-1)]))):!s.value&&p.value.length===0?(c(),v("div",et,[e("div",tt,[b[6]||(b[6]=e("i",{class:"bi bi-x-circle-fill me-2"},null,-1)),o(i,{t:"No backup yet, click the button above to create backup."})])])):S("",!0),(c(!0),v(H,null,K(p.value,y=>(c(),N(Ue,{onRefresh:b[2]||(b[2]=w=>u()),onRefreshPeersList:b[3]||(b[3]=w=>f("refreshPeersList")),b:y,key:y.filename},null,8,["b"]))),128))]),_:1})])])])])],512))}},nt=z(st,[["__scopeId","data-v-1f718118"]]),at={class:"card rounded-3 flex-grow-1 bg-danger-subtle border-danger-subtle border shadow"},ot={class:"card-body"},it={class:"d-flex align-items-center gap-3 inputGroup"},lt=["value"],dt={class:"mb-0"},rt={class:"d-flex mt-3"},ut=["disabled"],ct={__name:"updateConfigurationName",props:{configurationName:String},emits:["close"],setup(l,{emit:d}){const t=l,p=d,s=J({data:"",valid:!1}),f=q();j(()=>{Z(()=>s.data,y=>{s.valid=/^[a-zA-Z0-9_=+.-]{1,15}$/.test(y)&&y.length>0&&!f.Configurations.find(w=>w.Name===y)})});const u=O(),h=x(!1),g=E(),b=async()=>{s.data&&(h.value=!0,clearInterval(u.Peers.RefreshInterval),await W("/api/renameWireguardConfiguration",{ConfigurationName:t.configurationName,NewConfigurationName:s.data},async y=>{y.status?(await f.getConfigurations(),u.newMessage("Server","Configuration renamed","success"),g.push(`/configuration/${s.data}/peers`)):(u.newMessage("Server",y.message,"danger"),h.value=!1)}))};return(y,w)=>(c(),v("div",at,[e("div",ot,[e("p",null,[o(i,{t:"To update this configuration's name, WGDashboard will execute the following operations:"})]),e("ol",null,[e("li",null,[o(i,{t:"Duplicate current configuration's database table and .conf file with the new name"})]),e("li",null,[o(i,{t:"Delete current configuration's database table and .conf file"})])]),e("div",it,[e("input",{class:"form-control form-control-sm rounded-3",value:l.configurationName,disabled:""},null,8,lt),w[3]||(w[3]=e("h3",{class:"mb-0"},[e("i",{class:"bi bi-arrow-right"})],-1)),B(e("input",{class:$(["form-control form-control-sm rounded-3",[s.data?s.valid?"is-valid":"is-invalid":""]]),id:"newConfigurationName","onUpdate:modelValue":w[0]||(w[0]=_=>s.data=_)},null,2),[[P,s.data]])]),e("div",{class:$(["invalid-feedback",{"d-block":!s.valid&&s.data}])},[o(i,{t:"Configuration name is invalid. Possible reasons:"}),e("ul",dt,[e("li",null,[o(i,{t:"Configuration name already exist"})]),e("li",null,[o(i,{t:"Configuration name can only contain 15 lower/uppercase alphabet, numbers, underscore, equal sign, plus sign, period and hyphen."})])])],2),e("div",rt,[e("button",{onClick:w[1]||(w[1]=_=>p("close")),class:"btn btn-sm bg-secondary-subtle border-secondary-subtle text-secondary-emphasis rounded-3"},[o(i,{t:"Cancel"})]),e("button",{onClick:w[2]||(w[2]=_=>b()),disabled:!s.data||h.value,class:"btn btn-sm btn-danger rounded-3 ms-auto"},[o(i,{t:"Save"})],8,ut)])])]))}},gt=z(ct,[["__scopeId","data-v-33ea9576"]]),ft={name:"Dropdown",props:{width:{type:String,default:"80px"},height:{type:String,default:"auto"},title:{type:String,default:""},disabled:{type:Boolean,default:!1},defaultDisplay:{type:Boolean,default:!1}}},mt={class:"title"};function bt(l,d,t,p,s,f){return c(),v("div",{class:$(["dropdown",{disabled:t.disabled}]),onClick:d[0]||(d[0]=(...u)=>l.toggleDropdown&&l.toggleDropdown(...u)),onFocusout:d[1]||(d[1]=(...u)=>l.hideDropdown&&l.hideDropdown(...u)),tabindex:"0"},[e("div",mt,[e("div",null,D(t.title),1)])],34)}const vt=z(ft,[["render",bt]]),pt={components:{Dropdown:vt},name:"CodeEditor",props:{lineNums:{type:Boolean,default:!1},modelValue:{type:String},value:{type:String},theme:{type:String,default:"github-dark"},tabSpaces:{type:Number,default:2},wrap:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},autofocus:{type:Boolean,default:!1},header:{type:Boolean,default:!0},width:{type:String,default:"540px"},height:{type:String,default:"auto"},maxWidth:{type:String},minWidth:{type:String},maxHeight:{type:String},minHeight:{type:String},borderRadius:{type:String,default:"12px"},languages:{type:Array,default:function(){return[["javascript","JS"]]}},langListWidth:{type:String,default:"110px"},langListHeight:{type:String,default:"auto"},langListDisplay:{type:Boolean,default:!1},displayLanguage:{type:Boolean,default:!0},zIndex:{type:String,default:"0"},fontSize:{type:String,default:"17px"},padding:{type:String,default:"20px"}},directives:{highlight:{mounted(l,d){l.textContent=d.value},updated(l,d){l.scrolling?l.scrolling=!1:l.textContent=d.value}}},data(){return{scrollBarWidth:0,scrollBarHeight:0,top:0,left:0,languageClass:"hljs language-"+this.languages[0][0],languageTitle:this.languages[0][1]?this.languages[0][1]:this.languages[0][0],content:this.value,cursorPosition:0,insertTab:!1,lineNum:0,lineNumsWidth:0,scrolling:!1,textareaHeight:0,showLineNums:this.wrap?!1:this.lineNums}},computed:{tabWidth(){let l="";for(let d=0;d{clearInterval(u.Peers.RefreshInterval),h.value=!0,W("/api/deleteWireguardConfiguration",{ConfigurationName:p},k=>{k.status?(f.push("/"),u.newMessage("Server","Configuration deleted","success")):h.value=!1})},b=x(!0),y=x([]),w=()=>{b.value=!0,M("/api/getWireguardConfigurationBackup",{configurationName:p},k=>{y.value=k.data,b.value=!1})};j(()=>{w()});const _=d;return(k,r)=>(c(),v("div",le,[e("div",de,[e("div",re,[e("div",ue,[e("div",ce,[e("h5",ge,[o(i,{t:"Are you sure to delete this configuration?"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:r[0]||(r[0]=n=>_("close"))})]),e("div",fe,[e("p",me,[o(i,{t:"Once you deleted this configuration:"})]),e("ul",null,[e("li",null,[o(i,{t:"All connected peers will get disconnected"})]),e("li",null,[o(i,{t:"Both configuration file (.conf) and database table related to this configuration will get deleted"})])]),e("div",{class:$(["alert",[b.value?"alert-secondary":y.value.length>0?"alert-success":"alert-danger"]])},[b.value?(c(),v("div",be,[r[5]||(r[5]=e("i",{class:"bi bi-search me-2"},null,-1)),o(i,{t:"Checking backups..."})])):y.value.length>0?(c(),v("div",ve,[r[6]||(r[6]=e("i",{class:"bi bi-check-circle-fill me-2"},null,-1)),o(i,{t:"This configuration have "+y.value.length+" backups"},null,8,["t"])])):(c(),v("div",pe,[r[9]||(r[9]=e("i",{class:"bi bi-x-circle-fill me-2"},null,-1)),o(i,{t:"This configuration have no backup"}),e("a",{role:"button",onClick:r[1]||(r[1]=n=>_("backup")),class:"ms-auto btn btn-sm btn-primary rounded-3"},[r[7]||(r[7]=e("i",{class:"bi bi-clock-history me-2"},null,-1)),o(i,{t:"Backup"})]),e("a",{role:"button",onClick:r[2]||(r[2]=n=>w()),class:"btn btn-sm btn-primary rounded-3"},r[8]||(r[8]=[e("i",{class:"bi bi-arrow-clockwise"},null,-1)]))]))],2),r[11]||(r[11]=e("hr",null,null,-1)),e("p",null,[o(i,{t:"If you're sure, please type in the configuration name below and click Delete"})]),B(e("input",{class:"form-control rounded-3 mb-3",placeholder:I(p),"onUpdate:modelValue":r[3]||(r[3]=n=>s.value=n),type:"text"},null,8,he),[[P,s.value]]),e("button",{class:"btn btn-danger w-100",onClick:r[4]||(r[4]=n=>g()),disabled:s.value!==I(p)||h.value},[r[10]||(r[10]=e("i",{class:"bi bi-trash-fill me-2 rounded-3"},null,-1)),h.value?(c(),N(i,{key:1,t:"Deleting..."})):(c(),N(i,{key:0,t:"Delete"}))],8,ye)])])])])]))}},we={class:"card my-0 rounded-3"},_e={class:"card-body position-relative"},Ce={key:0,class:"position-absolute w-100 h-100 confirmationContainer start-0 top-0 rounded-3 d-flex p-2"},ke={class:"m-auto"},Se={class:"d-flex gap-2 align-items-center justify-content-center"},Ne=["disabled"],$e=["disabled"],Be={key:0,class:"position-absolute w-100 h-100 confirmationContainer start-0 top-0 rounded-3 d-flex p-2"},Re={class:"m-auto"},Pe={class:"d-flex gap-2 align-items-center justify-content-center"},De=["disabled"],We=["disabled"],Le={class:"d-flex gap-3"},Ve={class:"d-flex flex-column"},He={class:"text-muted"},Me={class:"d-flex flex-column"},Oe={class:"text-muted"},ze={class:"d-flex gap-2 align-items-center ms-auto"},Ie={class:"card rounded-3"},Te={key:0,class:"card-body"},Ke=["value"],Fe={class:"d-flex"},Ae={__name:"backup",props:["b","delay"],emits:["refresh","refreshPeersList"],setup(l,{emit:d}){Q(r=>({b32c1fd8:_.value}));const t=l,p=x(!1),s=x(!1),f=F(),u=d,h=O(),g=x(!1),b=()=>{g.value=!0,W("/api/deleteWireguardConfigurationBackup",{ConfigurationName:f.params.id,BackupFileName:t.b.filename},r=>{g.value=!1,r.status?(u("refresh"),h.newMessage("Server","Backup deleted","success")):h.newMessage("Server","Backup failed to delete","danger")})},y=()=>{g.value=!0,W("/api/restoreWireguardConfigurationBackup",{ConfigurationName:f.params.id,BackupFileName:t.b.filename},r=>{g.value=!1,s.value=!1,r.status?(u("refreshPeersList"),h.newMessage("Server","Backup restored with "+t.b.filename,"success")):h.newMessage("Server","Backup failed to restore","danger")})},w=()=>{M("/api/downloadWireguardConfigurationBackup",{configurationName:f.params.id,backupFileName:t.b.filename},r=>{r.status&&window.open(`/fileDownload?file=${r.data}`,"_blank")})},_=X(()=>t.delay+"s"),k=x(!1);return(r,n)=>(c(),v("div",we,[e("div",_e,[o(Y,{name:"zoomReversed"},{default:T(()=>[p.value?(c(),v("div",Ce,[e("div",ke,[e("h5",null,[o(i,{t:"Are you sure to delete this backup?"})]),e("div",Se,[e("button",{class:"btn btn-danger rounded-3",disabled:g.value,onClick:n[0]||(n[0]=C=>b())},[o(i,{t:"Yes"})],8,Ne),e("button",{onClick:n[1]||(n[1]=C=>p.value=!1),disabled:g.value,class:"btn bg-secondary-subtle text-secondary-emphasis border-secondary-subtle rounded-3"},[o(i,{t:"No"})],8,$e)])])])):S("",!0)]),_:1}),o(Y,{name:"zoomReversed"},{default:T(()=>[s.value?(c(),v("div",Be,[e("div",Re,[e("h5",null,[o(i,{t:"Are you sure to restore this backup?"})]),e("div",Pe,[e("button",{disabled:g.value,onClick:n[2]||(n[2]=C=>y()),class:"btn btn-success rounded-3"},[o(i,{t:"Yes"})],8,De),e("button",{onClick:n[3]||(n[3]=C=>s.value=!1),disabled:g.value,class:"btn bg-secondary-subtle text-secondary-emphasis border-secondary-subtle rounded-3"},[o(i,{t:"No"})],8,We)])])])):S("",!0)]),_:1}),e("div",Le,[e("div",Ve,[e("small",He,[o(i,{t:"Backup"})]),e("samp",null,D(l.b.filename),1)]),e("div",Me,[e("small",Oe,[o(i,{t:"Backup Date"})]),V(" "+D(I(ie)(l.b.backupDate,"YYYYMMDDHHmmss").format("YYYY-MM-DD HH:mm:ss")),1)]),e("div",ze,[e("button",{onClick:n[4]||(n[4]=C=>w()),class:"btn bg-primary-subtle text-primary-emphasis border-primary-subtle rounded-3 btn-sm"},n[8]||(n[8]=[e("i",{class:"bi bi-download"},null,-1)])),e("button",{onClick:n[5]||(n[5]=C=>s.value=!0),class:"btn bg-warning-subtle text-warning-emphasis border-warning-subtle rounded-3 btn-sm"},n[9]||(n[9]=[e("i",{class:"bi bi-clock-history"},null,-1)])),e("button",{onClick:n[6]||(n[6]=C=>p.value=!0),class:"btn bg-danger-subtle text-danger-emphasis border-danger-subtle rounded-3 btn-sm"},n[10]||(n[10]=[e("i",{class:"bi bi-trash-fill"},null,-1)]))])]),n[14]||(n[14]=e("hr",null,null,-1)),e("div",Ie,[e("a",{role:"button",class:$(["card-header d-flex text-decoration-none align-items-center",{"border-bottom-0":!k.value}]),style:{cursor:"pointer"},onClick:n[7]||(n[7]=C=>k.value=!k.value)},[e("small",null,[n[11]||(n[11]=V(".conf ")),o(i,{t:"File"})]),n[12]||(n[12]=e("i",{class:"bi bi-chevron-down ms-auto"},null,-1))],2),k.value?(c(),v("div",Te,[e("textarea",{class:"form-control rounded-3",value:l.b.content,disabled:"",style:{height:"300px","font-family":"var(--bs-font-monospace),sans-serif !important"}},null,8,Ke)])):S("",!0)]),n[15]||(n[15]=e("hr",null,null,-1)),e("div",Fe,[e("span",null,[n[13]||(n[13]=e("i",{class:"bi bi-database me-1"},null,-1)),o(i,{t:"Database File"})]),e("i",{class:$(["bi ms-auto",[l.b.database?"text-success bi-check-circle-fill":"text-danger bi-x-circle-fill"]])},null,2)])])]))}},Ue=z(Ae,[["__scopeId","data-v-9f0c0156"]]),Je={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll",ref:"editConfigurationContainer"},je={class:"d-flex h-100 w-100"},Ye={class:"modal-dialog-centered dashboardModal w-100 h-100 overflow-x-scroll flex-column gap-3 mx-3"},Ee={class:"my-5 d-flex gap-3 flex-column position-relative"},Ge={class:"title"},qe={class:"d-flex mb-3"},Ze={class:"mb-0"},Qe={class:"position-relative d-flex flex-column gap-3"},Xe={class:"text-center title",key:"spinner"},et={class:"card my-0 rounded-3",key:"noBackups"},tt={class:"card-body text-center text-muted"},st={__name:"configurationBackupRestore",emits:["close","refreshPeersList"],setup(l,{emit:d}){const t=F(),p=x([]),s=x(!0),f=d;j(()=>{u()});const u=()=>{s.value=!0,M("/api/getWireguardConfigurationBackup",{configurationName:t.params.id},g=>{p.value=g.data,s.value=!1})},h=()=>{M("/api/createWireguardConfigurationBackup",{configurationName:t.params.id},g=>{p.value=g.data,s.value=!1})};return(g,b)=>(c(),v("div",Je,[e("div",je,[e("div",Ye,[e("div",Ee,[e("div",Ge,[e("div",qe,[e("h4",Ze,[o(i,{t:"Backup & Restore"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:b[0]||(b[0]=y=>g.$emit("close"))})]),e("button",{onClick:b[1]||(b[1]=y=>h()),class:"btn bg-primary-subtle text-primary-emphasis border-primary-subtle rounded-3 w-100"},[b[4]||(b[4]=e("i",{class:"bi bi-plus-circle-fill me-2"},null,-1)),o(i,{t:"Create Backup"})])]),e("div",Qe,[o(G,{name:"list1"},{default:T(()=>[s.value&&p.value.length===0?(c(),v("div",Xe,b[5]||(b[5]=[e("div",{class:"spinner-border"},null,-1)]))):!s.value&&p.value.length===0?(c(),v("div",et,[e("div",tt,[b[6]||(b[6]=e("i",{class:"bi bi-x-circle-fill me-2"},null,-1)),o(i,{t:"No backup yet, click the button above to create backup."})])])):S("",!0),(c(!0),v(H,null,K(p.value,y=>(c(),N(Ue,{onRefresh:b[2]||(b[2]=w=>u()),onRefreshPeersList:b[3]||(b[3]=w=>f("refreshPeersList")),b:y,key:y.filename},null,8,["b"]))),128))]),_:1})])])])])],512))}},nt=z(st,[["__scopeId","data-v-1f718118"]]),at={class:"card rounded-3 flex-grow-1 bg-danger-subtle border-danger-subtle border shadow"},ot={class:"card-body"},it={class:"d-flex align-items-center gap-3 inputGroup"},lt=["value"],dt={class:"mb-0"},rt={class:"d-flex mt-3"},ut=["disabled"],ct={__name:"updateConfigurationName",props:{configurationName:String},emits:["close"],setup(l,{emit:d}){const t=l,p=d,s=J({data:"",valid:!1}),f=q();j(()=>{Z(()=>s.data,y=>{s.valid=/^[a-zA-Z0-9_=+.-]{1,15}$/.test(y)&&y.length>0&&!f.Configurations.find(w=>w.Name===y)})});const u=O(),h=x(!1),g=E(),b=async()=>{s.data&&(h.value=!0,clearInterval(u.Peers.RefreshInterval),await W("/api/renameWireguardConfiguration",{ConfigurationName:t.configurationName,NewConfigurationName:s.data},async y=>{y.status?(await f.getConfigurations(),u.newMessage("Server","Configuration renamed","success"),g.push(`/configuration/${s.data}/peers`)):(u.newMessage("Server",y.message,"danger"),h.value=!1)}))};return(y,w)=>(c(),v("div",at,[e("div",ot,[e("p",null,[o(i,{t:"To update this configuration's name, WGDashboard will execute the following operations:"})]),e("ol",null,[e("li",null,[o(i,{t:"Duplicate current configuration's database table and .conf file with the new name"})]),e("li",null,[o(i,{t:"Delete current configuration's database table and .conf file"})])]),e("div",it,[e("input",{class:"form-control form-control-sm rounded-3",value:l.configurationName,disabled:""},null,8,lt),w[3]||(w[3]=e("h3",{class:"mb-0"},[e("i",{class:"bi bi-arrow-right"})],-1)),B(e("input",{class:$(["form-control form-control-sm rounded-3",[s.data?s.valid?"is-valid":"is-invalid":""]]),id:"newConfigurationName","onUpdate:modelValue":w[0]||(w[0]=_=>s.data=_)},null,2),[[P,s.data]])]),e("div",{class:$(["invalid-feedback",{"d-block":!s.valid&&s.data}])},[o(i,{t:"Configuration name is invalid. Possible reasons:"}),e("ul",dt,[e("li",null,[o(i,{t:"Configuration name already exist"})]),e("li",null,[o(i,{t:"Configuration name can only contain 15 lower/uppercase alphabet, numbers, underscore, equal sign, plus sign, period and hyphen."})])])],2),e("div",rt,[e("button",{onClick:w[1]||(w[1]=_=>p("close")),class:"btn btn-sm bg-secondary-subtle border-secondary-subtle text-secondary-emphasis rounded-3"},[o(i,{t:"Cancel"})]),e("button",{onClick:w[2]||(w[2]=_=>b()),disabled:!s.data||h.value,class:"btn btn-sm btn-danger rounded-3 ms-auto"},[o(i,{t:"Save"})],8,ut)])])]))}},gt=z(ct,[["__scopeId","data-v-33ea9576"]]),ft={name:"Dropdown",props:{width:{type:String,default:"80px"},height:{type:String,default:"auto"},title:{type:String,default:""},disabled:{type:Boolean,default:!1},defaultDisplay:{type:Boolean,default:!1}}},mt={class:"title"};function bt(l,d,t,p,s,f){return c(),v("div",{class:$(["dropdown",{disabled:t.disabled}]),onClick:d[0]||(d[0]=(...u)=>l.toggleDropdown&&l.toggleDropdown(...u)),onFocusout:d[1]||(d[1]=(...u)=>l.hideDropdown&&l.hideDropdown(...u)),tabindex:"0"},[e("div",mt,[e("div",null,D(t.title),1)])],34)}const vt=z(ft,[["render",bt]]),pt={components:{Dropdown:vt},name:"CodeEditor",props:{lineNums:{type:Boolean,default:!1},modelValue:{type:String},value:{type:String},theme:{type:String,default:"github-dark"},tabSpaces:{type:Number,default:2},wrap:{type:Boolean,default:!1},readOnly:{type:Boolean,default:!1},autofocus:{type:Boolean,default:!1},header:{type:Boolean,default:!0},width:{type:String,default:"540px"},height:{type:String,default:"auto"},maxWidth:{type:String},minWidth:{type:String},maxHeight:{type:String},minHeight:{type:String},borderRadius:{type:String,default:"12px"},languages:{type:Array,default:function(){return[["javascript","JS"]]}},langListWidth:{type:String,default:"110px"},langListHeight:{type:String,default:"auto"},langListDisplay:{type:Boolean,default:!1},displayLanguage:{type:Boolean,default:!0},zIndex:{type:String,default:"0"},fontSize:{type:String,default:"17px"},padding:{type:String,default:"20px"}},directives:{highlight:{mounted(l,d){l.textContent=d.value},updated(l,d){l.scrolling?l.scrolling=!1:l.textContent=d.value}}},data(){return{scrollBarWidth:0,scrollBarHeight:0,top:0,left:0,languageClass:"hljs language-"+this.languages[0][0],languageTitle:this.languages[0][1]?this.languages[0][1]:this.languages[0][0],content:this.value,cursorPosition:0,insertTab:!1,lineNum:0,lineNumsWidth:0,scrolling:!1,textareaHeight:0,showLineNums:this.wrap?!1:this.lineNums}},computed:{tabWidth(){let l="";for(let d=0;d{this.scrollBarWidth=t[0].target.offsetWidth-t[0].target.clientWidth,this.scrollBarHeight=t[0].target.offsetHeight-t[0].target.clientHeight,this.textareaHeight=t[0].target.offsetHeight}).observe(this.$refs.textarea);const d=new ResizeObserver(t=>{this.lineNumsWidth=t[0].target.offsetWidth});this.$refs.lineNums&&d.observe(this.$refs.lineNums)},copy(){document.execCommand("copy")?(this.$refs.textarea.select(),document.execCommand("copy"),window.getSelection().removeAllRanges()):navigator.clipboard.writeText(this.$refs.textarea.value)},getLineNum(){const l=this.$refs.textarea.value;let d=0,t=l.indexOf(` `);for(;t!==-1;)d++,t=l.indexOf(` diff --git a/src/static/app/dist/assets/index-CfPziasH.js b/src/static/app/dist/assets/index-AzYVPyhh.js similarity index 99% rename from src/static/app/dist/assets/index-CfPziasH.js rename to src/static/app/dist/assets/index-AzYVPyhh.js index 157ee79..04fe633 100644 --- a/src/static/app/dist/assets/index-CfPziasH.js +++ b/src/static/app/dist/assets/index-AzYVPyhh.js @@ -1,4 +1,4 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-qE9bY-2C.js","assets/localeText-CyxQ0Kz3.js","assets/dayjs.min-C4BEB1lt.js","assets/message-C4Yp0lwZ.js","assets/message-BaDb-qC9.css","assets/index-BqzaPVBX.css","assets/configurationList-BqKGJfyN.js","assets/protocolBadge-BwyLRUKo.js","assets/storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BeoP6Zsu.js","assets/storageMount-Bl6vLa1N.css","assets/configurationList-BY8izVeQ.css","assets/settings-Dl9arqou.js","assets/vue-datepicker-BZlVex04.js","assets/settings-DbQs6Bt_.css","assets/ping-DuPgpLex.js","assets/osmap-C6nMOrBf.js","assets/osmap-CoctJCk_.css","assets/ping-DojRH9NX.css","assets/traceroute-BgNVsivF.js","assets/traceroute-DH1nb6XH.css","assets/newConfiguration-ChGJ7xSk.js","assets/index-L60y6kc9.js","assets/newConfiguration-CAFzjDsW.css","assets/restoreConfiguration-CPPo1_Tp.js","assets/restoreConfiguration-VgIx_N7z.css","assets/systemStatus-_MkxdUbb.js","assets/index-CPB-8sFq.js","assets/systemStatus-C-kMgV1x.css","assets/peerList-sNMkmM1X.js","assets/peerList-EJuRsJAQ.css","assets/signin-BDhImFq0.js","assets/signin-CHulm0U0.css","assets/setup-BzCz1W8G.js","assets/totp-2ovufqb0.js","assets/browser-CjSdxGTc.js","assets/share-QVhX-X9Q.js","assets/share-B4McccvP.css"])))=>i.map(i=>d[i]); +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-Cjfqz0Z7.js","assets/localeText-qJNpKS91.js","assets/dayjs.min-DO3nadR-.js","assets/message-CTPyyUOY.js","assets/message-BaDb-qC9.css","assets/index-BqzaPVBX.css","assets/configurationList-BF3DlWGJ.js","assets/protocolBadge-Cbmuyguj.js","assets/storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BOX6BWGk.js","assets/storageMount-Bl6vLa1N.css","assets/configurationList-BY8izVeQ.css","assets/settings-B46mikSI.js","assets/vue-datepicker-Co-zpMN6.js","assets/settings-DbQs6Bt_.css","assets/ping-DmtDLU9i.js","assets/osmap-iyZf8b7y.js","assets/osmap-CoctJCk_.css","assets/ping-DojRH9NX.css","assets/traceroute-DiI_l9IX.js","assets/traceroute-DH1nb6XH.css","assets/newConfiguration-C6S0P_og.js","assets/index-L60y6kc9.js","assets/newConfiguration-CAFzjDsW.css","assets/restoreConfiguration-CJFuDOeh.js","assets/restoreConfiguration-VgIx_N7z.css","assets/systemStatus-m4jEbVO8.js","assets/index-DuEkGU1e.js","assets/systemStatus-C-kMgV1x.css","assets/peerList-BqyAB2cF.js","assets/peerList-mRv1n5MO.css","assets/signin-JVg9SMDM.js","assets/signin-CHulm0U0.css","assets/setup-T1V4VgjP.js","assets/totp-SN5K0l_P.js","assets/browser-CjSdxGTc.js","assets/share-Q69ZSAC1.js","assets/share-B4McccvP.css"])))=>i.map(i=>d[i]); (function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&s(a)}).observe(document,{childList:!0,subtree:!0});function n(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(r){if(r.ep)return;r.ep=!0;const o=n(r);fetch(r.href,o)}})();var vg=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Gy(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Eg(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function s(){return this instanceof s?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(s){var r=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(n,s,r.get?r:{enumerable:!0,get:function(){return e[s]}})}),n}var yg={exports:{}},qe="top",nt="bottom",st="right",ze="left",Kr="auto",ds=[qe,nt,st,ze],On="start",ts="end",pc="clippingParents",fo="viewport",Wn="popper",gc="reference",Bi=ds.reduce(function(e,t){return e.concat([t+"-"+On,t+"-"+ts])},[]),ho=[].concat(ds,[Kr]).reduce(function(e,t){return e.concat([t,t+"-"+On,t+"-"+ts])},[]),mc="beforeRead",_c="read",vc="afterRead",Ec="beforeMain",yc="main",bc="afterMain",Ac="beforeWrite",Tc="write",wc="afterWrite",Cc=[mc,_c,vc,Ec,yc,bc,Ac,Tc,wc];function Nt(e){return e?(e.nodeName||"").toLowerCase():null}function rt(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function xn(e){var t=rt(e).Element;return e instanceof t||e instanceof Element}function ct(e){var t=rt(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function po(e){if(typeof ShadowRoot>"u")return!1;var t=rt(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function bg(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var s=t.styles[n]||{},r=t.attributes[n]||{},o=t.elements[n];!ct(o)||!Nt(o)||(Object.assign(o.style,s),Object.keys(r).forEach(function(a){var l=r[a];l===!1?o.removeAttribute(a):o.setAttribute(a,l===!0?"":l)}))})}function Ag(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(s){var r=t.elements[s],o=t.attributes[s]||{},a=Object.keys(t.styles.hasOwnProperty(s)?t.styles[s]:n[s]),l=a.reduce(function(c,d){return c[d]="",c},{});!ct(r)||!Nt(r)||(Object.assign(r.style,l),Object.keys(o).forEach(function(c){r.removeAttribute(c)}))})}}const go={name:"applyStyles",enabled:!0,phase:"write",fn:bg,effect:Ag,requires:["computeStyles"]};function Ot(e){return e.split("-")[0]}var Tn=Math.max,Dr=Math.min,ns=Math.round;function ji(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function Sc(){return!/^((?!chrome|android).)*safari/i.test(ji())}function ss(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var s=e.getBoundingClientRect(),r=1,o=1;t&&ct(e)&&(r=e.offsetWidth>0&&ns(s.width)/e.offsetWidth||1,o=e.offsetHeight>0&&ns(s.height)/e.offsetHeight||1);var a=xn(e)?rt(e):window,l=a.visualViewport,c=!Sc()&&n,d=(s.left+(c&&l?l.offsetLeft:0))/r,f=(s.top+(c&&l?l.offsetTop:0))/o,h=s.width/r,p=s.height/o;return{width:h,height:p,top:f,right:d+h,bottom:f+p,left:d,x:d,y:f}}function mo(e){var t=ss(e),n=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:s}}function Oc(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&po(n)){var s=t;do{if(s&&e.isSameNode(s))return!0;s=s.parentNode||s.host}while(s)}return!1}function Bt(e){return rt(e).getComputedStyle(e)}function Tg(e){return["table","td","th"].indexOf(Nt(e))>=0}function on(e){return((xn(e)?e.ownerDocument:e.document)||window.document).documentElement}function Wr(e){return Nt(e)==="html"?e:e.assignedSlot||e.parentNode||(po(e)?e.host:null)||on(e)}function Ua(e){return!ct(e)||Bt(e).position==="fixed"?null:e.offsetParent}function wg(e){var t=/firefox/i.test(ji()),n=/Trident/i.test(ji());if(n&&ct(e)){var s=Bt(e);if(s.position==="fixed")return null}var r=Wr(e);for(po(r)&&(r=r.host);ct(r)&&["html","body"].indexOf(Nt(r))<0;){var o=Bt(r);if(o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].indexOf(o.willChange)!==-1||t&&o.willChange==="filter"||t&&o.filter&&o.filter!=="none")return r;r=r.parentNode}return null}function Gs(e){for(var t=rt(e),n=Ua(e);n&&Tg(n)&&Bt(n).position==="static";)n=Ua(n);return n&&(Nt(n)==="html"||Nt(n)==="body"&&Bt(n).position==="static")?t:n||wg(e)||t}function _o(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function xs(e,t,n){return Tn(e,Dr(t,n))}function Cg(e,t,n){var s=xs(e,t,n);return s>n?n:s}function xc(){return{top:0,right:0,bottom:0,left:0}}function Nc(e){return Object.assign({},xc(),e)}function $c(e,t){return t.reduce(function(n,s){return n[s]=e,n},{})}var Sg=function(t,n){return t=typeof t=="function"?t(Object.assign({},n.rects,{placement:n.placement})):t,Nc(typeof t!="number"?t:$c(t,ds))};function Og(e){var t,n=e.state,s=e.name,r=e.options,o=n.elements.arrow,a=n.modifiersData.popperOffsets,l=Ot(n.placement),c=_o(l),d=[ze,st].indexOf(l)>=0,f=d?"height":"width";if(!(!o||!a)){var h=Sg(r.padding,n),p=mo(o),E=c==="y"?qe:ze,x=c==="y"?nt:st,C=n.rects.reference[f]+n.rects.reference[c]-a[c]-n.rects.popper[f],D=a[c]-n.rects.reference[c],P=Gs(o),V=P?c==="y"?P.clientHeight||0:P.clientWidth||0:0,k=C/2-D/2,M=h[E],b=V-p[f]-h[x],y=V/2-p[f]/2+k,S=xs(M,y,b),T=c;n.modifiersData[s]=(t={},t[T]=S,t.centerOffset=S-y,t)}}function xg(e){var t=e.state,n=e.options,s=n.element,r=s===void 0?"[data-popper-arrow]":s;r!=null&&(typeof r=="string"&&(r=t.elements.popper.querySelector(r),!r)||Oc(t.elements.popper,r)&&(t.elements.arrow=r))}const Dc={name:"arrow",enabled:!0,phase:"main",fn:Og,effect:xg,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function rs(e){return e.split("-")[1]}var Ng={top:"auto",right:"auto",bottom:"auto",left:"auto"};function $g(e,t){var n=e.x,s=e.y,r=t.devicePixelRatio||1;return{x:ns(n*r)/r||0,y:ns(s*r)/r||0}}function Ya(e){var t,n=e.popper,s=e.popperRect,r=e.placement,o=e.variation,a=e.offsets,l=e.position,c=e.gpuAcceleration,d=e.adaptive,f=e.roundOffsets,h=e.isFixed,p=a.x,E=p===void 0?0:p,x=a.y,C=x===void 0?0:x,D=typeof f=="function"?f({x:E,y:C}):{x:E,y:C};E=D.x,C=D.y;var P=a.hasOwnProperty("x"),V=a.hasOwnProperty("y"),k=ze,M=qe,b=window;if(d){var y=Gs(n),S="clientHeight",T="clientWidth";if(y===rt(n)&&(y=on(n),Bt(y).position!=="static"&&l==="absolute"&&(S="scrollHeight",T="scrollWidth")),y=y,r===qe||(r===ze||r===st)&&o===ts){M=nt;var A=h&&y===b&&b.visualViewport?b.visualViewport.height:y[S];C-=A-s.height,C*=c?1:-1}if(r===ze||(r===qe||r===nt)&&o===ts){k=st;var w=h&&y===b&&b.visualViewport?b.visualViewport.width:y[T];E-=w-s.width,E*=c?1:-1}}var j=Object.assign({position:l},d&&Ng),B=f===!0?$g({x:E,y:C},rt(n)):{x:E,y:C};if(E=B.x,C=B.y,c){var Q;return Object.assign({},j,(Q={},Q[M]=V?"0":"",Q[k]=P?"0":"",Q.transform=(b.devicePixelRatio||1)<=1?"translate("+E+"px, "+C+"px)":"translate3d("+E+"px, "+C+"px, 0)",Q))}return Object.assign({},j,(t={},t[M]=V?C+"px":"",t[k]=P?E+"px":"",t.transform="",t))}function Dg(e){var t=e.state,n=e.options,s=n.gpuAcceleration,r=s===void 0?!0:s,o=n.adaptive,a=o===void 0?!0:o,l=n.roundOffsets,c=l===void 0?!0:l,d={placement:Ot(t.placement),variation:rs(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:r,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,Ya(Object.assign({},d,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:c})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,Ya(Object.assign({},d,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const vo={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Dg,data:{}};var dr={passive:!0};function Lg(e){var t=e.state,n=e.instance,s=e.options,r=s.scroll,o=r===void 0?!0:r,a=s.resize,l=a===void 0?!0:a,c=rt(t.elements.popper),d=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&d.forEach(function(f){f.addEventListener("scroll",n.update,dr)}),l&&c.addEventListener("resize",n.update,dr),function(){o&&d.forEach(function(f){f.removeEventListener("scroll",n.update,dr)}),l&&c.removeEventListener("resize",n.update,dr)}}const Eo={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Lg,data:{}};var Rg={left:"right",right:"left",bottom:"top",top:"bottom"};function wr(e){return e.replace(/left|right|bottom|top/g,function(t){return Rg[t]})}var Ig={start:"end",end:"start"};function Ga(e){return e.replace(/start|end/g,function(t){return Ig[t]})}function yo(e){var t=rt(e),n=t.pageXOffset,s=t.pageYOffset;return{scrollLeft:n,scrollTop:s}}function bo(e){return ss(on(e)).left+yo(e).scrollLeft}function Pg(e,t){var n=rt(e),s=on(e),r=n.visualViewport,o=s.clientWidth,a=s.clientHeight,l=0,c=0;if(r){o=r.width,a=r.height;var d=Sc();(d||!d&&t==="fixed")&&(l=r.offsetLeft,c=r.offsetTop)}return{width:o,height:a,x:l+bo(e),y:c}}function Mg(e){var t,n=on(e),s=yo(e),r=(t=e.ownerDocument)==null?void 0:t.body,o=Tn(n.scrollWidth,n.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),a=Tn(n.scrollHeight,n.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),l=-s.scrollLeft+bo(e),c=-s.scrollTop;return Bt(r||n).direction==="rtl"&&(l+=Tn(n.clientWidth,r?r.clientWidth:0)-o),{width:o,height:a,x:l,y:c}}function Ao(e){var t=Bt(e),n=t.overflow,s=t.overflowX,r=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+r+s)}function Lc(e){return["html","body","#document"].indexOf(Nt(e))>=0?e.ownerDocument.body:ct(e)&&Ao(e)?e:Lc(Wr(e))}function Ns(e,t){var n;t===void 0&&(t=[]);var s=Lc(e),r=s===((n=e.ownerDocument)==null?void 0:n.body),o=rt(s),a=r?[o].concat(o.visualViewport||[],Ao(s)?s:[]):s,l=t.concat(a);return r?l:l.concat(Ns(Wr(a)))}function Ki(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function kg(e,t){var n=ss(e,!1,t==="fixed");return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function qa(e,t,n){return t===fo?Ki(Pg(e,n)):xn(t)?kg(t,n):Ki(Mg(on(e)))}function Vg(e){var t=Ns(Wr(e)),n=["absolute","fixed"].indexOf(Bt(e).position)>=0,s=n&&ct(e)?Gs(e):e;return xn(s)?t.filter(function(r){return xn(r)&&Oc(r,s)&&Nt(r)!=="body"}):[]}function Fg(e,t,n,s){var r=t==="clippingParents"?Vg(e):[].concat(t),o=[].concat(r,[n]),a=o[0],l=o.reduce(function(c,d){var f=qa(e,d,s);return c.top=Tn(f.top,c.top),c.right=Dr(f.right,c.right),c.bottom=Dr(f.bottom,c.bottom),c.left=Tn(f.left,c.left),c},qa(e,a,s));return l.width=l.right-l.left,l.height=l.bottom-l.top,l.x=l.left,l.y=l.top,l}function Rc(e){var t=e.reference,n=e.element,s=e.placement,r=s?Ot(s):null,o=s?rs(s):null,a=t.x+t.width/2-n.width/2,l=t.y+t.height/2-n.height/2,c;switch(r){case qe:c={x:a,y:t.y-n.height};break;case nt:c={x:a,y:t.y+t.height};break;case st:c={x:t.x+t.width,y:l};break;case ze:c={x:t.x-n.width,y:l};break;default:c={x:t.x,y:t.y}}var d=r?_o(r):null;if(d!=null){var f=d==="y"?"height":"width";switch(o){case On:c[d]=c[d]-(t[f]/2-n[f]/2);break;case ts:c[d]=c[d]+(t[f]/2-n[f]/2);break}}return c}function is(e,t){t===void 0&&(t={});var n=t,s=n.placement,r=s===void 0?e.placement:s,o=n.strategy,a=o===void 0?e.strategy:o,l=n.boundary,c=l===void 0?pc:l,d=n.rootBoundary,f=d===void 0?fo:d,h=n.elementContext,p=h===void 0?Wn:h,E=n.altBoundary,x=E===void 0?!1:E,C=n.padding,D=C===void 0?0:C,P=Nc(typeof D!="number"?D:$c(D,ds)),V=p===Wn?gc:Wn,k=e.rects.popper,M=e.elements[x?V:p],b=Fg(xn(M)?M:M.contextElement||on(e.elements.popper),c,f,a),y=ss(e.elements.reference),S=Rc({reference:y,element:k,strategy:"absolute",placement:r}),T=Ki(Object.assign({},k,S)),A=p===Wn?T:y,w={top:b.top-A.top+P.top,bottom:A.bottom-b.bottom+P.bottom,left:b.left-A.left+P.left,right:A.right-b.right+P.right},j=e.modifiersData.offset;if(p===Wn&&j){var B=j[r];Object.keys(w).forEach(function(Q){var oe=[st,nt].indexOf(Q)>=0?1:-1,he=[qe,nt].indexOf(Q)>=0?"y":"x";w[Q]+=B[he]*oe})}return w}function Hg(e,t){t===void 0&&(t={});var n=t,s=n.placement,r=n.boundary,o=n.rootBoundary,a=n.padding,l=n.flipVariations,c=n.allowedAutoPlacements,d=c===void 0?ho:c,f=rs(s),h=f?l?Bi:Bi.filter(function(x){return rs(x)===f}):ds,p=h.filter(function(x){return d.indexOf(x)>=0});p.length===0&&(p=h);var E=p.reduce(function(x,C){return x[C]=is(e,{placement:C,boundary:r,rootBoundary:o,padding:a})[Ot(C)],x},{});return Object.keys(E).sort(function(x,C){return E[x]-E[C]})}function Bg(e){if(Ot(e)===Kr)return[];var t=wr(e);return[Ga(e),t,Ga(t)]}function jg(e){var t=e.state,n=e.options,s=e.name;if(!t.modifiersData[s]._skip){for(var r=n.mainAxis,o=r===void 0?!0:r,a=n.altAxis,l=a===void 0?!0:a,c=n.fallbackPlacements,d=n.padding,f=n.boundary,h=n.rootBoundary,p=n.altBoundary,E=n.flipVariations,x=E===void 0?!0:E,C=n.allowedAutoPlacements,D=t.options.placement,P=Ot(D),V=P===D,k=c||(V||!x?[wr(D)]:Bg(D)),M=[D].concat(k).reduce(function(Be,Pe){return Be.concat(Ot(Pe)===Kr?Hg(t,{placement:Pe,boundary:f,rootBoundary:h,padding:d,flipVariations:x,allowedAutoPlacements:C}):Pe)},[]),b=t.rects.reference,y=t.rects.popper,S=new Map,T=!0,A=M[0],w=0;w=0,he=oe?"width":"height",te=is(t,{placement:j,boundary:f,rootBoundary:h,altBoundary:p,padding:d}),Z=oe?Q?st:ze:Q?nt:qe;b[he]>y[he]&&(Z=wr(Z));var ce=wr(Z),Ce=[];if(o&&Ce.push(te[B]<=0),l&&Ce.push(te[Z]<=0,te[ce]<=0),Ce.every(function(Be){return Be})){A=j,T=!1;break}S.set(j,Ce)}if(T)for(var He=x?3:1,De=function(Pe){var we=M.find(function(R){var q=S.get(R);if(q)return q.slice(0,Pe).every(function(z){return z})});if(we)return A=we,"break"},Ae=He;Ae>0;Ae--){var et=De(Ae);if(et==="break")break}t.placement!==A&&(t.modifiersData[s]._skip=!0,t.placement=A,t.reset=!0)}}const Ic={name:"flip",enabled:!0,phase:"main",fn:jg,requiresIfExists:["offset"],data:{_skip:!1}};function za(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function Xa(e){return[qe,st,nt,ze].some(function(t){return e[t]>=0})}function Kg(e){var t=e.state,n=e.name,s=t.rects.reference,r=t.rects.popper,o=t.modifiersData.preventOverflow,a=is(t,{elementContext:"reference"}),l=is(t,{altBoundary:!0}),c=za(a,s),d=za(l,r,o),f=Xa(c),h=Xa(d);t.modifiersData[n]={referenceClippingOffsets:c,popperEscapeOffsets:d,isReferenceHidden:f,hasPopperEscaped:h},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":f,"data-popper-escaped":h})}const Pc={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Kg};function Wg(e,t,n){var s=Ot(e),r=[ze,qe].indexOf(s)>=0?-1:1,o=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,a=o[0],l=o[1];return a=a||0,l=(l||0)*r,[ze,st].indexOf(s)>=0?{x:l,y:a}:{x:a,y:l}}function Ug(e){var t=e.state,n=e.options,s=e.name,r=n.offset,o=r===void 0?[0,0]:r,a=ho.reduce(function(f,h){return f[h]=Wg(h,t.rects,o),f},{}),l=a[t.placement],c=l.x,d=l.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=d),t.modifiersData[s]=a}const Mc={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Ug};function Yg(e){var t=e.state,n=e.name;t.modifiersData[n]=Rc({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}const To={name:"popperOffsets",enabled:!0,phase:"read",fn:Yg,data:{}};function Gg(e){return e==="x"?"y":"x"}function qg(e){var t=e.state,n=e.options,s=e.name,r=n.mainAxis,o=r===void 0?!0:r,a=n.altAxis,l=a===void 0?!1:a,c=n.boundary,d=n.rootBoundary,f=n.altBoundary,h=n.padding,p=n.tether,E=p===void 0?!0:p,x=n.tetherOffset,C=x===void 0?0:x,D=is(t,{boundary:c,rootBoundary:d,padding:h,altBoundary:f}),P=Ot(t.placement),V=rs(t.placement),k=!V,M=_o(P),b=Gg(M),y=t.modifiersData.popperOffsets,S=t.rects.reference,T=t.rects.popper,A=typeof C=="function"?C(Object.assign({},t.rects,{placement:t.placement})):C,w=typeof A=="number"?{mainAxis:A,altAxis:A}:Object.assign({mainAxis:0,altAxis:0},A),j=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,B={x:0,y:0};if(y){if(o){var Q,oe=M==="y"?qe:ze,he=M==="y"?nt:st,te=M==="y"?"height":"width",Z=y[M],ce=Z+D[oe],Ce=Z-D[he],He=E?-T[te]/2:0,De=V===On?S[te]:T[te],Ae=V===On?-T[te]:-S[te],et=t.elements.arrow,Be=E&&et?mo(et):{width:0,height:0},Pe=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:xc(),we=Pe[oe],R=Pe[he],q=xs(0,S[te],Be[te]),z=k?S[te]/2-He-q-we-w.mainAxis:De-q-we-w.mainAxis,J=k?-S[te]/2+He+q+R+w.mainAxis:Ae+q+R+w.mainAxis,$=t.elements.arrow&&Gs(t.elements.arrow),ge=$?M==="y"?$.clientTop||0:$.clientLeft||0:0,g=(Q=j?.[M])!=null?Q:0,_=Z+z-g-ge,O=Z+J-g,H=xs(E?Dr(ce,_):ce,Z,E?Tn(Ce,O):Ce);y[M]=H,B[M]=H-Z}if(l){var L,F=M==="x"?qe:ze,G=M==="x"?nt:st,N=y[b],W=b==="y"?"height":"width",K=N+D[F],se=N-D[G],X=[qe,ze].indexOf(P)!==-1,ee=(L=j?.[b])!=null?L:0,re=X?K:N-S[W]-T[W]-ee+w.altAxis,ae=X?N+S[W]+T[W]-ee-w.altAxis:se,de=E&&X?Cg(re,N,ae):xs(E?re:K,N,E?ae:se);y[b]=de,B[b]=de-N}t.modifiersData[s]=B}}const kc={name:"preventOverflow",enabled:!0,phase:"main",fn:qg,requiresIfExists:["offset"]};function zg(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function Xg(e){return e===rt(e)||!ct(e)?yo(e):zg(e)}function Qg(e){var t=e.getBoundingClientRect(),n=ns(t.width)/e.offsetWidth||1,s=ns(t.height)/e.offsetHeight||1;return n!==1||s!==1}function Jg(e,t,n){n===void 0&&(n=!1);var s=ct(t),r=ct(t)&&Qg(t),o=on(t),a=ss(e,r,n),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(s||!s&&!n)&&((Nt(t)!=="body"||Ao(o))&&(l=Xg(t)),ct(t)?(c=ss(t,!0),c.x+=t.clientLeft,c.y+=t.clientTop):o&&(c.x=bo(o))),{x:a.left+l.scrollLeft-c.x,y:a.top+l.scrollTop-c.y,width:a.width,height:a.height}}function Zg(e){var t=new Map,n=new Set,s=[];e.forEach(function(o){t.set(o.name,o)});function r(o){n.add(o.name);var a=[].concat(o.requires||[],o.requiresIfExists||[]);a.forEach(function(l){if(!n.has(l)){var c=t.get(l);c&&r(c)}}),s.push(o)}return e.forEach(function(o){n.has(o.name)||r(o)}),s}function em(e){var t=Zg(e);return Cc.reduce(function(n,s){return n.concat(t.filter(function(r){return r.phase===s}))},[])}function tm(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function nm(e){var t=e.reduce(function(n,s){var r=n[s.name];return n[s.name]=r?Object.assign({},r,s,{options:Object.assign({},r.options,s.options),data:Object.assign({},r.data,s.data)}):s,n},{});return Object.keys(t).map(function(n){return t[n]})}var Qa={placement:"bottom",modifiers:[],strategy:"absolute"};function Ja(){for(var e=arguments.length,t=new Array(e),n=0;ne&&e.exact?hy:new RegExp(`(?:${en(e)}${mt}${en(e)})|(?:${en(e)}${li}${en(e)})`,"g");ci.v4=e=>e&&e.exact?py:new RegExp(`${en(e)}${mt}${en(e)}`,"g");ci.v6=e=>e&&e.exact?gy:new RegExp(`${en(e)}${li}${en(e)}`,"g");const If={exact:!1},Pf=`${ci.v4().source}\\/(3[0-2]|[12]?[0-9])`,Mf=`${ci.v6().source}\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])`,my=new RegExp(`^${Pf}$`),_y=new RegExp(`^${Mf}$`),vy=({exact:e}=If)=>e?my:new RegExp(Pf,"g"),Ey=({exact:e}=If)=>e?_y:new RegExp(Mf,"g"),kf=vy({exact:!0}),Vf=Ey({exact:!0}),na=e=>kf.test(e)?4:Vf.test(e)?6:0;na.v4=e=>kf.test(e);na.v6=e=>Vf.test(e);const kt=e=>{const t=un();if(t.Locale===null)return e;const s=Object.keys(t.Locale).filter(r=>e.match(new RegExp("^"+r+"$","gi"))!==null);return s.length===0||s.length>1||t.Locale[s[0]].length===0?e:e.replace(new RegExp(s[0],"gi"),t.Locale[s[0]])},yy=yf("WireguardConfigurationsStore",{state:()=>({Configurations:void 0,searchString:"",ConfigurationListInterval:void 0,PeerScheduleJobs:{dropdowns:{Field:[{display:kt("Total Received"),value:"total_receive",unit:"GB",type:"number"},{display:kt("Total Sent"),value:"total_sent",unit:"GB",type:"number"},{display:kt("Total Usage"),value:"total_data",unit:"GB",type:"number"},{display:kt("Date"),value:"date",type:"date"}],Operator:[{display:kt("larger than"),value:"lgt"}],Action:[{display:kt("Restrict Peer"),value:"restrict"},{display:kt("Delete Peer"),value:"delete"}]}}}),actions:{async getConfigurations(){await jr("/api/getWireguardConfigurations",{},e=>{e.status&&(this.Configurations=e.data)})},regexCheckIP(e){return/((^\s*((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))\s*$)|(^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$))/.test(e)},checkCIDR(e){return na(e)!==0},checkWGKeyLength(e){return/^[A-Za-z0-9+/]{43}=?=?$/.test(e)}}}),by=async()=>{let e=!1;return await jr("/api/validateAuthentication",{},t=>{e=t.status}),e},ms=ly({history:FE(),scrollBehavior(){document.querySelector("main")!==null&&document.querySelector("main").scrollTo({top:0})},routes:[{name:"Index",path:"/",component:()=>Qe(()=>import("./index-qE9bY-2C.js"),__vite__mapDeps([0,1,2,3,4,5])),meta:{requiresAuth:!0},children:[{name:"Configuration List",path:"",component:()=>Qe(()=>import("./configurationList-BqKGJfyN.js"),__vite__mapDeps([6,1,7,8,9,10])),meta:{title:"WireGuard Configurations"}},{name:"Settings",path:"/settings",component:()=>Qe(()=>import("./settings-Dl9arqou.js"),__vite__mapDeps([11,1,2,12,13])),meta:{title:"Settings"}},{path:"/ping",name:"Ping",component:()=>Qe(()=>import("./ping-DuPgpLex.js"),__vite__mapDeps([14,1,15,16,17]))},{path:"/traceroute",name:"Traceroute",component:()=>Qe(()=>import("./traceroute-BgNVsivF.js"),__vite__mapDeps([18,15,16,1,19]))},{name:"New Configuration",path:"/new_configuration",component:()=>Qe(()=>import("./newConfiguration-ChGJ7xSk.js"),__vite__mapDeps([20,21,1,22])),meta:{title:"New Configuration"}},{name:"Restore Configuration",path:"/restore_configuration",component:()=>Qe(()=>import("./restoreConfiguration-CPPo1_Tp.js"),__vite__mapDeps([23,1,2,7,21,24])),meta:{title:"Restore Configuration"}},{name:"System Status",path:"/system_status",component:()=>Qe(()=>import("./systemStatus-_MkxdUbb.js"),__vite__mapDeps([25,1,8,9,26,2,27])),meta:{title:"System Status"}},{name:"Configuration",path:"/configuration/:id",component:()=>Qe(()=>import("./configuration-cdo-S5d9.js"),[]),meta:{title:"Configuration"},children:[{name:"Peers List",path:"peers",component:()=>Qe(()=>import("./peerList-sNMkmM1X.js"),__vite__mapDeps([28,7,1,26,2,29]))}]}]},{path:"/signin",component:()=>Qe(()=>import("./signin-BDhImFq0.js"),__vite__mapDeps([30,3,1,2,4,31])),meta:{title:"Sign In",hideTopNav:!0}},{path:"/welcome",component:()=>Qe(()=>import("./setup-BzCz1W8G.js"),__vite__mapDeps([32,1])),meta:{requiresAuth:!0,title:"Welcome to WGDashboard",hideTopNav:!0}},{path:"/2FASetup",component:()=>Qe(()=>import("./totp-2ovufqb0.js"),__vite__mapDeps([33,34,1])),meta:{requiresAuth:!0,title:"Multi-Factor Authentication Setup",hideTopNav:!0}},{path:"/share",component:()=>Qe(()=>import("./share-QVhX-X9Q.js"),__vite__mapDeps([35,34,1,36])),meta:{title:"Share",hideTopNav:!0}}]});ms.beforeEach(async(e,t,n)=>{const s=yy(),r=un();e.meta.title?e.params.id?document.title=e.params.id+" | WGDashboard":document.title=e.meta.title+" | WGDashboard":document.title="WGDashboard",r.ShowNavBar=!1,document.querySelector(".loadingBar").classList.remove("loadingDone"),document.querySelector(".loadingBar").classList.add("loading"),e.meta.requiresAuth?r.getActiveCrossServer()?(await r.getConfiguration(),!s.Configurations&&e.name!=="Configuration List"&&await s.getConfigurations(),n()):await by()?(await r.getConfiguration(),!s.Configurations&&e.name!=="Configuration List"&&await s.getConfigurations(),r.Redirect=void 0,n()):(r.Redirect=e,n("/signin"),r.newMessage("WGDashboard","Sign in session ended, please sign in again","warning")):n()});ms.afterEach(()=>{document.querySelector(".loadingBar").classList.remove("loading"),document.querySelector(".loadingBar").classList.add("loadingDone")});const Ff=()=>{let e={"content-type":"application/json"};const n=un().getActiveCrossServer();return n&&(e["wg-dashboard-apikey"]=n.apiKey),e},Hf=e=>{const n=un().getActiveCrossServer();return n?`${n.host}${e}`:`${window.location.protocol}//${(window.location.host+window.location.pathname+e).replace(/\/\//g,"/")}`},jr=async(e,t=void 0,n=void 0)=>{const s=new URLSearchParams(t);await fetch(`${Hf(e)}?${s.toString()}`,{headers:Ff()}).then(r=>{const o=un();if(r.ok)return r.json();if(r.status!==200)throw r.status===401&&o.newMessage("WGDashboard","Sign in session ended, please sign in again","warning"),new Error(r.statusText)}).then(r=>n?n(r):void 0).catch(r=>{console.log("Error:",r),ms.push({path:"/signin"})})},gb=async(e,t,n)=>{await fetch(`${Hf(e)}`,{headers:Ff(),method:"POST",body:JSON.stringify(t)}).then(s=>{const r=un();if(s.ok)return s.json();if(s.status!==200)throw s.status===401&&r.newMessage("WGDashboard","Sign in session ended, please sign in again","warning"),new Error(s.statusText)}).then(s=>n?n(s):void 0).catch(s=>{console.log("Error:",s),ms.push({path:"/signin"})})};let Tr;const Ay=new Uint8Array(16);function Ty(){if(!Tr&&(Tr=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!Tr))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Tr(Ay)}const Re=[];for(let e=0;e<256;++e)Re.push((e+256).toString(16).slice(1));function wy(e,t=0){return Re[e[t+0]]+Re[e[t+1]]+Re[e[t+2]]+Re[e[t+3]]+"-"+Re[e[t+4]]+Re[e[t+5]]+"-"+Re[e[t+6]]+Re[e[t+7]]+"-"+Re[e[t+8]]+Re[e[t+9]]+"-"+Re[e[t+10]]+Re[e[t+11]]+Re[e[t+12]]+Re[e[t+13]]+Re[e[t+14]]+Re[e[t+15]]}const Cy=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),dc={randomUUID:Cy};function hc(e,t,n){if(dc.randomUUID&&!t&&!e)return dc.randomUUID();e=e||{};const s=e.random||(e.rng||Ty)();return s[6]=s[6]&15|64,s[8]=s[8]&63|128,wy(s)}const un=yf("DashboardConfigurationStore",{state:()=>({Redirect:void 0,Configuration:void 0,Messages:[],Peers:{Selecting:!1,RefreshInterval:void 0},CrossServerConfiguration:{Enable:!1,ServerList:{}},SystemStatus:void 0,ActiveServerConfiguration:void 0,IsElectronApp:!1,ShowNavBar:!1,Locale:void 0,HelpAgent:{Enable:!1}}),actions:{initCrossServerConfiguration(){const e=localStorage.getItem("CrossServerConfiguration");localStorage.getItem("ActiveCrossServerConfiguration")!==null&&(this.ActiveServerConfiguration=localStorage.getItem("ActiveCrossServerConfiguration")),e===null?window.localStorage.setItem("CrossServerConfiguration",JSON.stringify(this.CrossServerConfiguration)):this.CrossServerConfiguration=JSON.parse(e)},syncCrossServerConfiguration(){window.localStorage.setItem("CrossServerConfiguration",JSON.stringify(this.CrossServerConfiguration))},addCrossServerConfiguration(){this.CrossServerConfiguration.ServerList[hc().toString()]={host:"",apiKey:"",active:!1}},deleteCrossServerConfiguration(e){delete this.CrossServerConfiguration.ServerList[e]},getActiveCrossServer(){const e=localStorage.getItem("ActiveCrossServerConfiguration");if(e!==null)return this.CrossServerConfiguration.ServerList[e]},setActiveCrossServer(e){this.ActiveServerConfiguration=e,localStorage.setItem("ActiveCrossServerConfiguration",e)},removeActiveCrossServer(){this.ActiveServerConfiguration=void 0,localStorage.removeItem("ActiveCrossServerConfiguration")},async getConfiguration(){await jr("/api/getDashboardConfiguration",{},e=>{e.status&&(this.Configuration=e.data)})},async signOut(){await jr("/api/signout",{},()=>{this.removeActiveCrossServer(),document.cookie="",this.$router.go("/signin")})},newMessage(e,t,n){this.Messages.push({id:hc(),from:kt(e),content:kt(t),type:n,show:!0})},applyLocale(e){if(this.Locale===null)return e;const n=Object.keys(this.Locale).filter(s=>e.match(new RegExp("^"+s+"$","g"))!==null);return console.log(n),n.length===0||n.length>1?e:this.Locale[n[0]]}},persist:{pick:["HelpAgent.Enable"]}});/*! SPDX-License-Identifier: GPL-2.0 +`.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),hy=new RegExp(`(?:^${mt}$)|(?:^${li}$)`),py=new RegExp(`^${mt}$`),gy=new RegExp(`^${li}$`),ci=e=>e&&e.exact?hy:new RegExp(`(?:${en(e)}${mt}${en(e)})|(?:${en(e)}${li}${en(e)})`,"g");ci.v4=e=>e&&e.exact?py:new RegExp(`${en(e)}${mt}${en(e)}`,"g");ci.v6=e=>e&&e.exact?gy:new RegExp(`${en(e)}${li}${en(e)}`,"g");const If={exact:!1},Pf=`${ci.v4().source}\\/(3[0-2]|[12]?[0-9])`,Mf=`${ci.v6().source}\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])`,my=new RegExp(`^${Pf}$`),_y=new RegExp(`^${Mf}$`),vy=({exact:e}=If)=>e?my:new RegExp(Pf,"g"),Ey=({exact:e}=If)=>e?_y:new RegExp(Mf,"g"),kf=vy({exact:!0}),Vf=Ey({exact:!0}),na=e=>kf.test(e)?4:Vf.test(e)?6:0;na.v4=e=>kf.test(e);na.v6=e=>Vf.test(e);const kt=e=>{const t=un();if(t.Locale===null)return e;const s=Object.keys(t.Locale).filter(r=>e.match(new RegExp("^"+r+"$","gi"))!==null);return s.length===0||s.length>1||t.Locale[s[0]].length===0?e:e.replace(new RegExp(s[0],"gi"),t.Locale[s[0]])},yy=yf("WireguardConfigurationsStore",{state:()=>({Configurations:void 0,searchString:"",ConfigurationListInterval:void 0,PeerScheduleJobs:{dropdowns:{Field:[{display:kt("Total Received"),value:"total_receive",unit:"GB",type:"number"},{display:kt("Total Sent"),value:"total_sent",unit:"GB",type:"number"},{display:kt("Total Usage"),value:"total_data",unit:"GB",type:"number"},{display:kt("Date"),value:"date",type:"date"}],Operator:[{display:kt("larger than"),value:"lgt"}],Action:[{display:kt("Restrict Peer"),value:"restrict"},{display:kt("Delete Peer"),value:"delete"}]}}}),actions:{async getConfigurations(){await jr("/api/getWireguardConfigurations",{},e=>{e.status&&(this.Configurations=e.data)})},regexCheckIP(e){return/((^\s*((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))\s*$)|(^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(%.+)?\s*$))/.test(e)},checkCIDR(e){return na(e)!==0},checkWGKeyLength(e){return/^[A-Za-z0-9+/]{43}=?=?$/.test(e)}}}),by=async()=>{let e=!1;return await jr("/api/validateAuthentication",{},t=>{e=t.status}),e},ms=ly({history:FE(),scrollBehavior(){document.querySelector("main")!==null&&document.querySelector("main").scrollTo({top:0})},routes:[{name:"Index",path:"/",component:()=>Qe(()=>import("./index-Cjfqz0Z7.js"),__vite__mapDeps([0,1,2,3,4,5])),meta:{requiresAuth:!0},children:[{name:"Configuration List",path:"",component:()=>Qe(()=>import("./configurationList-BF3DlWGJ.js"),__vite__mapDeps([6,1,7,8,9,10])),meta:{title:"WireGuard Configurations"}},{name:"Settings",path:"/settings",component:()=>Qe(()=>import("./settings-B46mikSI.js"),__vite__mapDeps([11,1,2,12,13])),meta:{title:"Settings"}},{path:"/ping",name:"Ping",component:()=>Qe(()=>import("./ping-DmtDLU9i.js"),__vite__mapDeps([14,1,15,16,17]))},{path:"/traceroute",name:"Traceroute",component:()=>Qe(()=>import("./traceroute-DiI_l9IX.js"),__vite__mapDeps([18,15,16,1,19]))},{name:"New Configuration",path:"/new_configuration",component:()=>Qe(()=>import("./newConfiguration-C6S0P_og.js"),__vite__mapDeps([20,21,1,22])),meta:{title:"New Configuration"}},{name:"Restore Configuration",path:"/restore_configuration",component:()=>Qe(()=>import("./restoreConfiguration-CJFuDOeh.js"),__vite__mapDeps([23,1,2,7,21,24])),meta:{title:"Restore Configuration"}},{name:"System Status",path:"/system_status",component:()=>Qe(()=>import("./systemStatus-m4jEbVO8.js"),__vite__mapDeps([25,1,8,9,26,2,27])),meta:{title:"System Status"}},{name:"Configuration",path:"/configuration/:id",component:()=>Qe(()=>import("./configuration-BirGUgke.js"),[]),meta:{title:"Configuration"},children:[{name:"Peers List",path:"peers",component:()=>Qe(()=>import("./peerList-BqyAB2cF.js"),__vite__mapDeps([28,7,1,26,2,29]))}]}]},{path:"/signin",component:()=>Qe(()=>import("./signin-JVg9SMDM.js"),__vite__mapDeps([30,3,1,2,4,31])),meta:{title:"Sign In",hideTopNav:!0}},{path:"/welcome",component:()=>Qe(()=>import("./setup-T1V4VgjP.js"),__vite__mapDeps([32,1])),meta:{requiresAuth:!0,title:"Welcome to WGDashboard",hideTopNav:!0}},{path:"/2FASetup",component:()=>Qe(()=>import("./totp-SN5K0l_P.js"),__vite__mapDeps([33,34,1])),meta:{requiresAuth:!0,title:"Multi-Factor Authentication Setup",hideTopNav:!0}},{path:"/share",component:()=>Qe(()=>import("./share-Q69ZSAC1.js"),__vite__mapDeps([35,34,1,36])),meta:{title:"Share",hideTopNav:!0}}]});ms.beforeEach(async(e,t,n)=>{const s=yy(),r=un();e.meta.title?e.params.id?document.title=e.params.id+" | WGDashboard":document.title=e.meta.title+" | WGDashboard":document.title="WGDashboard",r.ShowNavBar=!1,document.querySelector(".loadingBar").classList.remove("loadingDone"),document.querySelector(".loadingBar").classList.add("loading"),e.meta.requiresAuth?r.getActiveCrossServer()?(await r.getConfiguration(),!s.Configurations&&e.name!=="Configuration List"&&await s.getConfigurations(),n()):await by()?(await r.getConfiguration(),!s.Configurations&&e.name!=="Configuration List"&&await s.getConfigurations(),r.Redirect=void 0,n()):(r.Redirect=e,n("/signin"),r.newMessage("WGDashboard","Sign in session ended, please sign in again","warning")):n()});ms.afterEach(()=>{document.querySelector(".loadingBar").classList.remove("loading"),document.querySelector(".loadingBar").classList.add("loadingDone")});const Ff=()=>{let e={"content-type":"application/json"};const n=un().getActiveCrossServer();return n&&(e["wg-dashboard-apikey"]=n.apiKey),e},Hf=e=>{const n=un().getActiveCrossServer();return n?`${n.host}${e}`:`${window.location.protocol}//${(window.location.host+window.location.pathname+e).replace(/\/\//g,"/")}`},jr=async(e,t=void 0,n=void 0)=>{const s=new URLSearchParams(t);await fetch(`${Hf(e)}?${s.toString()}`,{headers:Ff()}).then(r=>{const o=un();if(r.ok)return r.json();if(r.status!==200)throw r.status===401&&o.newMessage("WGDashboard","Sign in session ended, please sign in again","warning"),new Error(r.statusText)}).then(r=>n?n(r):void 0).catch(r=>{console.log("Error:",r),ms.push({path:"/signin"})})},gb=async(e,t,n)=>{await fetch(`${Hf(e)}`,{headers:Ff(),method:"POST",body:JSON.stringify(t)}).then(s=>{const r=un();if(s.ok)return s.json();if(s.status!==200)throw s.status===401&&r.newMessage("WGDashboard","Sign in session ended, please sign in again","warning"),new Error(s.statusText)}).then(s=>n?n(s):void 0).catch(s=>{console.log("Error:",s),ms.push({path:"/signin"})})};let Tr;const Ay=new Uint8Array(16);function Ty(){if(!Tr&&(Tr=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!Tr))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Tr(Ay)}const Re=[];for(let e=0;e<256;++e)Re.push((e+256).toString(16).slice(1));function wy(e,t=0){return Re[e[t+0]]+Re[e[t+1]]+Re[e[t+2]]+Re[e[t+3]]+"-"+Re[e[t+4]]+Re[e[t+5]]+"-"+Re[e[t+6]]+Re[e[t+7]]+"-"+Re[e[t+8]]+Re[e[t+9]]+"-"+Re[e[t+10]]+Re[e[t+11]]+Re[e[t+12]]+Re[e[t+13]]+Re[e[t+14]]+Re[e[t+15]]}const Cy=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),dc={randomUUID:Cy};function hc(e,t,n){if(dc.randomUUID&&!t&&!e)return dc.randomUUID();e=e||{};const s=e.random||(e.rng||Ty)();return s[6]=s[6]&15|64,s[8]=s[8]&63|128,wy(s)}const un=yf("DashboardConfigurationStore",{state:()=>({Redirect:void 0,Configuration:void 0,Messages:[],Peers:{Selecting:!1,RefreshInterval:void 0},CrossServerConfiguration:{Enable:!1,ServerList:{}},SystemStatus:void 0,ActiveServerConfiguration:void 0,IsElectronApp:!1,ShowNavBar:!1,Locale:void 0,HelpAgent:{Enable:!1}}),actions:{initCrossServerConfiguration(){const e=localStorage.getItem("CrossServerConfiguration");localStorage.getItem("ActiveCrossServerConfiguration")!==null&&(this.ActiveServerConfiguration=localStorage.getItem("ActiveCrossServerConfiguration")),e===null?window.localStorage.setItem("CrossServerConfiguration",JSON.stringify(this.CrossServerConfiguration)):this.CrossServerConfiguration=JSON.parse(e)},syncCrossServerConfiguration(){window.localStorage.setItem("CrossServerConfiguration",JSON.stringify(this.CrossServerConfiguration))},addCrossServerConfiguration(){this.CrossServerConfiguration.ServerList[hc().toString()]={host:"",apiKey:"",active:!1}},deleteCrossServerConfiguration(e){delete this.CrossServerConfiguration.ServerList[e]},getActiveCrossServer(){const e=localStorage.getItem("ActiveCrossServerConfiguration");if(e!==null)return this.CrossServerConfiguration.ServerList[e]},setActiveCrossServer(e){this.ActiveServerConfiguration=e,localStorage.setItem("ActiveCrossServerConfiguration",e)},removeActiveCrossServer(){this.ActiveServerConfiguration=void 0,localStorage.removeItem("ActiveCrossServerConfiguration")},async getConfiguration(){await jr("/api/getDashboardConfiguration",{},e=>{e.status&&(this.Configuration=e.data)})},async signOut(){await jr("/api/signout",{},()=>{this.removeActiveCrossServer(),document.cookie="",this.$router.go("/signin")})},newMessage(e,t,n){this.Messages.push({id:hc(),from:kt(e),content:kt(t),type:n,show:!0})},applyLocale(e){if(this.Locale===null)return e;const n=Object.keys(this.Locale).filter(s=>e.match(new RegExp("^"+s+"$","g"))!==null);return console.log(n),n.length===0||n.length>1?e:this.Locale[n[0]]}},persist:{pick:["HelpAgent.Enable"]}});/*! SPDX-License-Identifier: GPL-2.0 * * Copyright (C) 2015-2020 Jason A. Donenfeld . All Rights Reserved. */(function(){function e(b){var y=new Float64Array(16);if(b)for(var S=0;S>16&1),T[w-1]&=65535;T[15]=A[15]-32767-(T[14]>>16&1),S=T[15]>>16&1,T[14]&=65535,s(A,T,1-S)}for(var w=0;w<16;++w)b[2*w]=A[w]&255,b[2*w+1]=A[w]>>8}function n(b){for(var y=0;y<16;++y)b[(y+1)%16]+=(y<15?1:38)*Math.floor(b[y]/65536),b[y]&=65535}function s(b,y,S){for(var T,A=~(S-1),w=0;w<16;++w)T=A&(b[w]^y[w]),b[w]^=T,y[w]^=T}function r(b,y,S){for(var T=0;T<16;++T)b[T]=y[T]+S[T]|0}function o(b,y,S){for(var T=0;T<16;++T)b[T]=y[T]-S[T]|0}function a(b,y,S){for(var T=new Float64Array(31),A=0;A<16;++A)for(var w=0;w<16;++w)T[A+w]+=y[A]*S[w];for(var A=0;A<15;++A)T[A]+=38*T[A+16];for(var A=0;A<16;++A)b[A]=T[A];n(b),n(b)}function l(b,y){for(var S=e(),T=0;T<16;++T)S[T]=y[T];for(var T=253;T>=0;--T)a(S,S,S),T!==2&&T!==4&&a(S,S,y);for(var T=0;T<16;++T)b[T]=S[T]}function c(b){b[31]=b[31]&127|64,b[0]&=248}function d(b){for(var y,S=new Uint8Array(32),T=e([1]),A=e([9]),w=e(),j=e([1]),B=e(),Q=e(),oe=e([56129,1]),he=e([9]),te=0;te<32;++te)S[te]=b[te];c(S);for(var te=254;te>=0;--te)y=S[te>>>3]>>>(te&7)&1,s(T,A,y),s(w,j,y),r(B,T,w),o(T,T,w),r(w,A,j),o(A,A,j),a(j,B,B),a(Q,T,T),a(T,w,T),a(w,A,B),r(B,T,w),o(T,T,w),a(A,T,T),o(w,j,Q),a(T,w,oe),r(T,T,j),a(w,w,T),a(T,j,Q),a(j,A,he),a(A,B,B),s(T,A,y),s(w,j,y);return l(w,w),a(T,T,w),t(S,T),S}function f(){var b=new Uint8Array(32);return window.crypto.getRandomValues(b),b}function h(){var b=f();return c(b),b}function p(b,y){for(var S=Uint8Array.from([y[0]>>2&63,(y[0]<<4|y[1]>>4)&63,(y[1]<<2|y[2]>>6)&63,y[2]&63]),T=0;T<4;++T)b[T]=S[T]+65+(25-S[T]>>8&6)-(51-S[T]>>8&75)-(61-S[T]>>8&15)+(62-S[T]>>8&3)}function E(b){var y,S=new Uint8Array(44);for(y=0;y<32/3;++y)p(S.subarray(y*4),b.subarray(y*3));return p(S.subarray(y*4),Uint8Array.from([b[y*3+0],b[y*3+1],0])),S[43]=61,String.fromCharCode.apply(null,S)}function x(b){let y=window.atob(b),S=y.length,T=new Uint8Array(S);for(let w=0;w>>8&255,y>>>16&255,y>>>24&255)}function D(b,y){b.push(y&255,y>>>8&255)}function P(b,y){for(var S=0;S>>1:y>>>1;k.table[S]=y}}for(var A=-1,w=0;w>>8^k.table[(A^b[w])&255];return(A^-1)>>>0}function M(b){for(var y=[],S=[],T=0,A=0;A{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},Oy={key:0,class:"navbar bg-dark sticky-top","data-bs-theme":"dark"},xy={class:"container-fluid d-flex text-body align-items-center"},Ny={key:0,class:"bi bi-list"},$y={key:1,class:"bi bi-x-lg"},Dy={__name:"App",setup(e){const t=un();t.initCrossServerConfiguration(),window.IS_WGDASHBOARD_DESKTOP&&(t.IsElectronApp=!0,t.CrossServerConfiguration.Enable=!0),Zn(t.CrossServerConfiguration,()=>{t.syncCrossServerConfiguration()},{deep:!0});const n=uy();return(s,r)=>{const o=v_("RouterLink");return Ct(),br(Ve,null,[r[2]||(r[2]=qn("div",{style:{"z-index":"9999",height:"5px"},class:"position-absolute loadingBar top-0 start-0"},null,-1)),vt(n).meta.hideTopNav?ov("",!0):(Ct(),br("nav",Oy,[qn("div",xy,[ye(o,{to:"/",class:"navbar-brand mb-0 h1"},{default:Yn(()=>r[1]||(r[1]=[qn("img",{src:aE,alt:"WGDashboard Logo",style:{width:"32px"}},null,-1)])),_:1}),qn("a",{role:"button",class:"navbarBtn text-body",onClick:r[0]||(r[0]=a=>vt(t).ShowNavBar=!vt(t).ShowNavBar),style:{"line-height":"0","font-size":"2rem"}},[ye(Cl,{name:"fade2",mode:"out-in"},{default:Yn(()=>[vt(t).ShowNavBar?(Ct(),br("i",$y)):(Ct(),br("i",Ny))]),_:1})])])])),(Ct(),Ws(X_,null,{default:Yn(()=>[ye(vt(Rf),null,{default:Yn(({Component:a})=>[ye(Cl,{name:"app",mode:"out-in",type:"transition",appear:""},{default:Yn(()=>[(Ct(),Ws(E_(a)))]),_:2},1024)]),_:1})]),_:1}))],64)}}},Ly=Sy(Dy,[["__scopeId","data-v-16b1f9a3"]]);let uo;await fetch("/api/locale").then(e=>e.json()).then(e=>uo=e.data).catch(()=>{uo=null});const sa=Qv(Ly);sa.use(ms);const Bf=tE();Bf.use(({store:e})=>{e.$router=Zr(ms)});sa.use(Bf);const Ry=un();Ry.Locale=uo;sa.mount("#app");export{ub as $,gb as A,Uv as B,db as C,un as D,zs as E,Ve as F,kt as G,Zn as H,pb as I,uy as J,qc as K,Tm as L,Zy as M,Qe as N,ob as O,Bo as P,fu as Q,Zo as R,X_ as S,cb as T,mv as U,Wo as V,yy as W,fe as X,ei as Y,ko as Z,Sy as _,Ct as a,vg as a0,Gy as a1,Jy as a2,eb as a3,fb as a4,rb as a5,zy as a6,nb as a7,sb as a8,qy as a9,rv as aa,av as ab,Te as ac,Qy as ad,hb as ae,ib as af,d_ as ag,ab as ah,qn as b,br as c,ye as d,ov as e,iv as f,jr as g,tb as h,Ws as i,Cl as j,v_ as k,E_ as l,Xy as m,Xr as n,Ko as o,lb as p,lt as q,Cn as r,zr as s,Am as t,vt as u,Kv as v,Yn as w,Du as x,Bl as y,hc as z}; diff --git a/src/static/app/dist/assets/index-qE9bY-2C.js b/src/static/app/dist/assets/index-Cjfqz0Z7.js similarity index 98% rename from src/static/app/dist/assets/index-qE9bY-2C.js rename to src/static/app/dist/assets/index-Cjfqz0Z7.js index e59d041..81c1d4c 100644 --- a/src/static/app/dist/assets/index-qE9bY-2C.js +++ b/src/static/app/dist/assets/index-Cjfqz0Z7.js @@ -1 +1 @@ -import{r as M,o as H,a as o,c,b as e,d as s,e as v,f as b,t as h,_ as S,D as y,w as d,T as w,n as k,u as L,W as T,g as G,G as N,F as A,h as D,i as x,j as $,k as p,l as W,S as z}from"./index-CfPziasH.js";import{L as u}from"./localeText-CyxQ0Kz3.js";import"./dayjs.min-C4BEB1lt.js";import{M as V}from"./message-C4Yp0lwZ.js";const O={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},U={class:"container d-flex h-100 w-100"},j={class:"m-auto modal-dialog-centered dashboardModal"},B={class:"card rounded-3 shadow flex-grow-1"},R={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-2"},F={class:"mb-0"},I={class:"card-body px-4 pb-4 d-flex flex-column gap-2"},q={class:"card text-decoration-none",target:"_blank",role:"button",href:"https://discord.gg/72TwzjeuWm"},E={class:"card-body d-flex gap-4 align-items-center"},J={class:"d-flex align-items-center"},P={class:"badge rounded-pill text-bg-primary ms-2"},Y={key:0,class:"spinner-border spinner-border-sm",style:{width:"0.7rem",height:"0.7rem"}},K={key:1},Q={class:"text-muted"},X={class:"card text-decoration-none",href:"https://donaldzou.github.io/WGDashboard-Documentation/",target:"_blank"},Z={class:"card-body d-flex gap-4 align-items-center"},ee={class:"mb-0"},te={class:"text-muted"},se={__name:"helpModal",setup(i){const t=M(!0),g=M(void 0);return H(()=>{t.value=!0,fetch("https://discord.com/api/guilds/1276818723637956628/widget.json").then(r=>r.json()).then(r=>{g.value=r,t.value=!1}).catch(()=>{t.value=!1})}),(r,a)=>(o(),c("div",O,[e("div",U,[e("div",j,[e("div",B,[e("div",R,[e("h4",F,[s(u,{t:"Help"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:a[0]||(a[0]=l=>r.$emit("close"))})]),e("div",I,[e("a",q,[e("div",E,[a[3]||(a[3]=e("h1",{class:"mb-0"},[e("i",{class:"bi bi-discord"})],-1)),e("div",null,[e("div",J,[a[2]||(a[2]=e("h5",{class:"mb-0"}," Discord Server ",-1)),e("span",P,[t.value?(o(),c("span",Y)):v("",!0),g.value!==void 0&&!t.value?(o(),c("span",K,[a[1]||(a[1]=e("i",{class:"bi bi-person-fill me-2"},null,-1)),b(h(g.value.presence_count)+" Online ",1)])):v("",!0)])]),e("small",Q,[s(u,{t:"Join our Discord server for quick help or chat about WGDashboard!"})])])])]),e("a",X,[e("div",Z,[a[4]||(a[4]=e("h1",{class:"mb-0"},[e("i",{class:"bi bi-hash"})],-1)),e("div",null,[e("h5",ee,[s(u,{t:"Official Documentation"})]),e("small",te,[s(u,{t:"Official documentation contains User Guides and more..."})])])])])])])])])]))}},oe={key:"header",class:"shadow"},ae={class:"p-3 d-flex gap-2 flex-column"},ne={class:"d-flex text-body"},ie={class:"d-flex flex-column align-items-start gap-1"},le={class:"mb-0"},de={class:"mb-0"},re={class:"list-group"},ce={href:"https://donaldzou.github.io/WGDashboard-Documentation/",target:"_blank",class:"list-group-item list-group-item-action d-flex align-items-center"},ue={target:"_blank",role:"button",href:"https://discord.gg/72TwzjeuWm",class:"list-group-item list-group-item-action d-flex align-items-center"},me={__name:"agentModal",emits:["close"],setup(i,{emit:t}){const g=t,r=y();return(a,l)=>(o(),c("div",{class:k(["agentContainer m-2 rounded-3 d-flex flex-column text-body",{enabled:L(r).HelpAgent.Enable}])},[s(w,{name:"agent-message"},{default:d(()=>[e("div",oe,[e("div",ae,[e("div",ne,[e("div",ie,[e("h5",le,[s(u,{t:"Help"})])]),e("a",{role:"button",class:"ms-auto text-body",onClick:l[0]||(l[0]=n=>g("close"))},l[1]||(l[1]=[e("h5",{class:"mb-0"},[e("i",{class:"bi bi-x-lg"})],-1)]))]),e("p",de,[s(u,{t:"You can visit our: "})]),e("div",re,[e("a",ce,[l[2]||(l[2]=e("i",{class:"bi bi-book-fill"},null,-1)),s(u,{class:"ms-auto",t:"Official Documentation"})]),e("a",ue,[l[3]||(l[3]=e("i",{class:"bi bi-discord"},null,-1)),s(u,{class:"ms-auto",t:"Discord Server"})])])])])]),_:1})],2))}},ge=S(me,[["__scopeId","data-v-a76f42bd"]]),_e={name:"navbar",components:{HelpModal:se,LocaleText:u,AgentModal:ge},setup(){const i=T(),t=y();return{wireguardConfigurationsStore:i,dashboardConfigurationStore:t}},data(){return{updateAvailable:!1,updateMessage:"Checking for update...",updateUrl:"",openHelpModal:!1,openAgentModal:!1}},computed:{getActiveCrossServer(){if(this.dashboardConfigurationStore.ActiveServerConfiguration)return new URL(this.dashboardConfigurationStore.CrossServerConfiguration.ServerList[this.dashboardConfigurationStore.ActiveServerConfiguration].host)}},mounted(){G("/api/getDashboardUpdate",{},i=>{i.status?(i.data&&(this.updateAvailable=!0,this.updateUrl=i.data),this.updateMessage=i.message):(this.updateMessage=N("Failed to check available update"),console.log(`Failed to get update: ${i.message}`))})}},pe=["data-bs-theme"],fe={id:"sidebarMenu",class:"bg-body-tertiary sidebar border h-100 rounded-3 shadow overflow-y-scroll"},be={class:"sidebar-sticky"},he={class:"text-white text-center m-0 py-3 mb-2 btn-brand"},ve={key:0,class:"ms-auto"},xe={class:"nav flex-column px-2 gap-1"},Ce={class:"nav-item"},ke={class:"nav-item"},$e={class:"nav-item"},Se={class:"sidebar-heading px-3 mt-3 mb-1 text-muted text-center"},ye={class:"nav flex-column px-2 gap-1"},Me={class:"nav-item"},we={class:"sidebar-heading px-3 mt-3 mb-1 text-muted text-center"},Ae={class:"nav flex-column px-2 gap-1"},De={class:"nav-item"},He={class:"nav-item"},Le={class:"nav-item"},Te={class:"nav flex-column px-2 mb-3"},Ge={class:"nav-item"},Ne={class:"nav-item",style:{"font-size":"0.8rem"}},We=["href"],ze={class:"nav-link text-muted rounded-3"},Ve={key:1,class:"nav-link text-muted rounded-3"};function Oe(i,t,g,r,a,l){const n=p("LocaleText"),m=p("RouterLink"),C=p("HelpModal"),f=p("AgentModal");return o(),c("div",{class:k(["col-md-3 col-lg-2 d-md-block p-2 navbar-container",{active:this.dashboardConfigurationStore.ShowNavBar}]),"data-bs-theme":r.dashboardConfigurationStore.Configuration.Server.dashboard_theme},[e("nav",fe,[e("div",be,[e("div",he,[t[5]||(t[5]=e("h5",{class:"mb-0"}," WGDashboard ",-1)),l.getActiveCrossServer!==void 0?(o(),c("small",ve,[t[4]||(t[4]=e("i",{class:"bi bi-hdd-rack-fill me-2"},null,-1)),b(h(l.getActiveCrossServer.host),1)])):v("",!0)]),e("ul",xe,[e("li",Ce,[s(m,{class:"nav-link rounded-3",to:"/","exact-active-class":"active"},{default:d(()=>[t[6]||(t[6]=e("i",{class:"bi bi-house me-2"},null,-1)),s(n,{t:"Home"})]),_:1})]),e("li",ke,[s(m,{class:"nav-link rounded-3",to:"/settings","exact-active-class":"active"},{default:d(()=>[t[7]||(t[7]=e("i",{class:"bi bi-gear me-2"},null,-1)),s(n,{t:"Settings"})]),_:1})]),e("li",$e,[e("a",{class:"nav-link rounded-3",role:"button",onClick:t[0]||(t[0]=_=>a.openAgentModal=!0)},[t[8]||(t[8]=e("i",{class:"bi bi-question-circle me-2"},null,-1)),s(n,{t:"Help"})])])]),t[11]||(t[11]=e("hr",{class:"text-body my-2"},null,-1)),e("h6",Se,[s(n,{t:"WireGuard Configurations"})]),e("ul",ye,[(o(!0),c(A,null,D(this.wireguardConfigurationsStore.Configurations,_=>(o(),c("li",Me,[s(m,{to:"/configuration/"+_.Name+"/peers",class:"nav-link nav-conf-link rounded-3","active-class":"active"},{default:d(()=>[e("span",{class:k(["dot me-2",{active:_.Status}])},null,2),b(" "+h(_.Name),1)]),_:2},1032,["to"])]))),256))]),t[12]||(t[12]=e("hr",{class:"text-body my-2"},null,-1)),e("h6",we,[s(n,{t:"Tools"})]),e("ul",Ae,[e("li",De,[s(m,{to:"/system_status",class:"nav-link rounded-3","active-class":"active"},{default:d(()=>[s(n,{t:"System Status"})]),_:1})]),e("li",He,[s(m,{to:"/ping",class:"nav-link rounded-3","active-class":"active"},{default:d(()=>[s(n,{t:"Ping"})]),_:1})]),e("li",Le,[s(m,{to:"/traceroute",class:"nav-link rounded-3","active-class":"active"},{default:d(()=>[s(n,{t:"Traceroute"})]),_:1})])]),t[13]||(t[13]=e("hr",{class:"text-body my-2"},null,-1)),e("ul",Te,[e("li",Ge,[e("a",{class:"nav-link text-danger rounded-3",onClick:t[1]||(t[1]=_=>this.dashboardConfigurationStore.signOut()),role:"button",style:{"font-weight":"bold"}},[t[9]||(t[9]=e("i",{class:"bi bi-box-arrow-left me-2"},null,-1)),s(n,{t:"Sign Out"})])]),e("li",Ne,[this.updateAvailable?(o(),c("a",{key:0,href:this.updateUrl,class:"text-decoration-none rounded-3",target:"_blank"},[e("small",ze,[s(n,{t:this.updateMessage},null,8,["t"]),t[10]||(t[10]=b(" (")),s(n,{t:"Current Version:"}),b(" "+h(r.dashboardConfigurationStore.Configuration.Server.version)+") ",1)])],8,We)):(o(),c("small",Ve,[s(n,{t:this.updateMessage},null,8,["t"]),b(" ("+h(r.dashboardConfigurationStore.Configuration.Server.version)+") ",1)]))])])])]),s($,{name:"zoom"},{default:d(()=>[this.openHelpModal?(o(),x(C,{key:0,onClose:t[2]||(t[2]=_=>{a.openHelpModal=!1})})):v("",!0)]),_:1}),s($,{name:"slideIn"},{default:d(()=>[this.openAgentModal?(o(),x(f,{key:0,onClose:t[3]||(t[3]=_=>a.openAgentModal=!1)})):v("",!0)]),_:1})],10,pe)}const Ue=S(_e,[["render",Oe],["__scopeId","data-v-58e71749"]]),je={name:"index",components:{Message:V,Navbar:Ue},async setup(){return{dashboardConfigurationStore:y()}},computed:{getMessages(){return this.dashboardConfigurationStore.Messages.filter(i=>i.show)}}},Be=["data-bs-theme"],Re={class:"row h-100"},Fe={class:"col-md-9 col-lg-10 overflow-y-scroll mb-0 pt-2"},Ie={class:"messageCentre text-body position-absolute d-flex"};function qe(i,t,g,r,a,l){const n=p("Navbar"),m=p("RouterView"),C=p("Message");return o(),c("div",{class:"container-fluid flex-grow-1 main","data-bs-theme":this.dashboardConfigurationStore.Configuration.Server.dashboard_theme},[e("div",Re,[s(n),e("main",Fe,[(o(),x(z,null,{default:d(()=>[s(m,null,{default:d(({Component:f})=>[s($,{name:"fade2",mode:"out-in",appear:""},{default:d(()=>[(o(),x(W(f)))]),_:2},1024)]),_:1})]),_:1})),e("div",Ie,[s(w,{name:"message",tag:"div",class:"position-relative flex-sm-grow-0 flex-grow-1 d-flex align-items-end ms-sm-auto flex-column gap-2"},{default:d(()=>[(o(!0),c(A,null,D(l.getMessages.slice().reverse(),f=>(o(),x(C,{message:f,key:f.id},null,8,["message"]))),128))]),_:1})])])])],8,Be)}const Ke=S(je,[["render",qe],["__scopeId","data-v-0c6a5068"]]);export{Ke as default}; +import{r as M,o as H,a as o,c,b as e,d as s,e as v,f as b,t as h,_ as S,D as y,w as d,T as w,n as k,u as L,W as T,g as G,G as N,F as A,h as D,i as x,j as $,k as p,l as W,S as z}from"./index-AzYVPyhh.js";import{L as u}from"./localeText-qJNpKS91.js";import"./dayjs.min-DO3nadR-.js";import{M as V}from"./message-CTPyyUOY.js";const O={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},U={class:"container d-flex h-100 w-100"},j={class:"m-auto modal-dialog-centered dashboardModal"},B={class:"card rounded-3 shadow flex-grow-1"},R={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-2"},F={class:"mb-0"},I={class:"card-body px-4 pb-4 d-flex flex-column gap-2"},q={class:"card text-decoration-none",target:"_blank",role:"button",href:"https://discord.gg/72TwzjeuWm"},E={class:"card-body d-flex gap-4 align-items-center"},J={class:"d-flex align-items-center"},P={class:"badge rounded-pill text-bg-primary ms-2"},Y={key:0,class:"spinner-border spinner-border-sm",style:{width:"0.7rem",height:"0.7rem"}},K={key:1},Q={class:"text-muted"},X={class:"card text-decoration-none",href:"https://donaldzou.github.io/WGDashboard-Documentation/",target:"_blank"},Z={class:"card-body d-flex gap-4 align-items-center"},ee={class:"mb-0"},te={class:"text-muted"},se={__name:"helpModal",setup(i){const t=M(!0),g=M(void 0);return H(()=>{t.value=!0,fetch("https://discord.com/api/guilds/1276818723637956628/widget.json").then(r=>r.json()).then(r=>{g.value=r,t.value=!1}).catch(()=>{t.value=!1})}),(r,a)=>(o(),c("div",O,[e("div",U,[e("div",j,[e("div",B,[e("div",R,[e("h4",F,[s(u,{t:"Help"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:a[0]||(a[0]=l=>r.$emit("close"))})]),e("div",I,[e("a",q,[e("div",E,[a[3]||(a[3]=e("h1",{class:"mb-0"},[e("i",{class:"bi bi-discord"})],-1)),e("div",null,[e("div",J,[a[2]||(a[2]=e("h5",{class:"mb-0"}," Discord Server ",-1)),e("span",P,[t.value?(o(),c("span",Y)):v("",!0),g.value!==void 0&&!t.value?(o(),c("span",K,[a[1]||(a[1]=e("i",{class:"bi bi-person-fill me-2"},null,-1)),b(h(g.value.presence_count)+" Online ",1)])):v("",!0)])]),e("small",Q,[s(u,{t:"Join our Discord server for quick help or chat about WGDashboard!"})])])])]),e("a",X,[e("div",Z,[a[4]||(a[4]=e("h1",{class:"mb-0"},[e("i",{class:"bi bi-hash"})],-1)),e("div",null,[e("h5",ee,[s(u,{t:"Official Documentation"})]),e("small",te,[s(u,{t:"Official documentation contains User Guides and more..."})])])])])])])])])]))}},oe={key:"header",class:"shadow"},ae={class:"p-3 d-flex gap-2 flex-column"},ne={class:"d-flex text-body"},ie={class:"d-flex flex-column align-items-start gap-1"},le={class:"mb-0"},de={class:"mb-0"},re={class:"list-group"},ce={href:"https://donaldzou.github.io/WGDashboard-Documentation/",target:"_blank",class:"list-group-item list-group-item-action d-flex align-items-center"},ue={target:"_blank",role:"button",href:"https://discord.gg/72TwzjeuWm",class:"list-group-item list-group-item-action d-flex align-items-center"},me={__name:"agentModal",emits:["close"],setup(i,{emit:t}){const g=t,r=y();return(a,l)=>(o(),c("div",{class:k(["agentContainer m-2 rounded-3 d-flex flex-column text-body",{enabled:L(r).HelpAgent.Enable}])},[s(w,{name:"agent-message"},{default:d(()=>[e("div",oe,[e("div",ae,[e("div",ne,[e("div",ie,[e("h5",le,[s(u,{t:"Help"})])]),e("a",{role:"button",class:"ms-auto text-body",onClick:l[0]||(l[0]=n=>g("close"))},l[1]||(l[1]=[e("h5",{class:"mb-0"},[e("i",{class:"bi bi-x-lg"})],-1)]))]),e("p",de,[s(u,{t:"You can visit our: "})]),e("div",re,[e("a",ce,[l[2]||(l[2]=e("i",{class:"bi bi-book-fill"},null,-1)),s(u,{class:"ms-auto",t:"Official Documentation"})]),e("a",ue,[l[3]||(l[3]=e("i",{class:"bi bi-discord"},null,-1)),s(u,{class:"ms-auto",t:"Discord Server"})])])])])]),_:1})],2))}},ge=S(me,[["__scopeId","data-v-a76f42bd"]]),_e={name:"navbar",components:{HelpModal:se,LocaleText:u,AgentModal:ge},setup(){const i=T(),t=y();return{wireguardConfigurationsStore:i,dashboardConfigurationStore:t}},data(){return{updateAvailable:!1,updateMessage:"Checking for update...",updateUrl:"",openHelpModal:!1,openAgentModal:!1}},computed:{getActiveCrossServer(){if(this.dashboardConfigurationStore.ActiveServerConfiguration)return new URL(this.dashboardConfigurationStore.CrossServerConfiguration.ServerList[this.dashboardConfigurationStore.ActiveServerConfiguration].host)}},mounted(){G("/api/getDashboardUpdate",{},i=>{i.status?(i.data&&(this.updateAvailable=!0,this.updateUrl=i.data),this.updateMessage=i.message):(this.updateMessage=N("Failed to check available update"),console.log(`Failed to get update: ${i.message}`))})}},pe=["data-bs-theme"],fe={id:"sidebarMenu",class:"bg-body-tertiary sidebar border h-100 rounded-3 shadow overflow-y-scroll"},be={class:"sidebar-sticky"},he={class:"text-white text-center m-0 py-3 mb-2 btn-brand"},ve={key:0,class:"ms-auto"},xe={class:"nav flex-column px-2 gap-1"},Ce={class:"nav-item"},ke={class:"nav-item"},$e={class:"nav-item"},Se={class:"sidebar-heading px-3 mt-3 mb-1 text-muted text-center"},ye={class:"nav flex-column px-2 gap-1"},Me={class:"nav-item"},we={class:"sidebar-heading px-3 mt-3 mb-1 text-muted text-center"},Ae={class:"nav flex-column px-2 gap-1"},De={class:"nav-item"},He={class:"nav-item"},Le={class:"nav-item"},Te={class:"nav flex-column px-2 mb-3"},Ge={class:"nav-item"},Ne={class:"nav-item",style:{"font-size":"0.8rem"}},We=["href"],ze={class:"nav-link text-muted rounded-3"},Ve={key:1,class:"nav-link text-muted rounded-3"};function Oe(i,t,g,r,a,l){const n=p("LocaleText"),m=p("RouterLink"),C=p("HelpModal"),f=p("AgentModal");return o(),c("div",{class:k(["col-md-3 col-lg-2 d-md-block p-2 navbar-container",{active:this.dashboardConfigurationStore.ShowNavBar}]),"data-bs-theme":r.dashboardConfigurationStore.Configuration.Server.dashboard_theme},[e("nav",fe,[e("div",be,[e("div",he,[t[5]||(t[5]=e("h5",{class:"mb-0"}," WGDashboard ",-1)),l.getActiveCrossServer!==void 0?(o(),c("small",ve,[t[4]||(t[4]=e("i",{class:"bi bi-hdd-rack-fill me-2"},null,-1)),b(h(l.getActiveCrossServer.host),1)])):v("",!0)]),e("ul",xe,[e("li",Ce,[s(m,{class:"nav-link rounded-3",to:"/","exact-active-class":"active"},{default:d(()=>[t[6]||(t[6]=e("i",{class:"bi bi-house me-2"},null,-1)),s(n,{t:"Home"})]),_:1})]),e("li",ke,[s(m,{class:"nav-link rounded-3",to:"/settings","exact-active-class":"active"},{default:d(()=>[t[7]||(t[7]=e("i",{class:"bi bi-gear me-2"},null,-1)),s(n,{t:"Settings"})]),_:1})]),e("li",$e,[e("a",{class:"nav-link rounded-3",role:"button",onClick:t[0]||(t[0]=_=>a.openAgentModal=!0)},[t[8]||(t[8]=e("i",{class:"bi bi-question-circle me-2"},null,-1)),s(n,{t:"Help"})])])]),t[11]||(t[11]=e("hr",{class:"text-body my-2"},null,-1)),e("h6",Se,[s(n,{t:"WireGuard Configurations"})]),e("ul",ye,[(o(!0),c(A,null,D(this.wireguardConfigurationsStore.Configurations,_=>(o(),c("li",Me,[s(m,{to:"/configuration/"+_.Name+"/peers",class:"nav-link nav-conf-link rounded-3","active-class":"active"},{default:d(()=>[e("span",{class:k(["dot me-2",{active:_.Status}])},null,2),b(" "+h(_.Name),1)]),_:2},1032,["to"])]))),256))]),t[12]||(t[12]=e("hr",{class:"text-body my-2"},null,-1)),e("h6",we,[s(n,{t:"Tools"})]),e("ul",Ae,[e("li",De,[s(m,{to:"/system_status",class:"nav-link rounded-3","active-class":"active"},{default:d(()=>[s(n,{t:"System Status"})]),_:1})]),e("li",He,[s(m,{to:"/ping",class:"nav-link rounded-3","active-class":"active"},{default:d(()=>[s(n,{t:"Ping"})]),_:1})]),e("li",Le,[s(m,{to:"/traceroute",class:"nav-link rounded-3","active-class":"active"},{default:d(()=>[s(n,{t:"Traceroute"})]),_:1})])]),t[13]||(t[13]=e("hr",{class:"text-body my-2"},null,-1)),e("ul",Te,[e("li",Ge,[e("a",{class:"nav-link text-danger rounded-3",onClick:t[1]||(t[1]=_=>this.dashboardConfigurationStore.signOut()),role:"button",style:{"font-weight":"bold"}},[t[9]||(t[9]=e("i",{class:"bi bi-box-arrow-left me-2"},null,-1)),s(n,{t:"Sign Out"})])]),e("li",Ne,[this.updateAvailable?(o(),c("a",{key:0,href:this.updateUrl,class:"text-decoration-none rounded-3",target:"_blank"},[e("small",ze,[s(n,{t:this.updateMessage},null,8,["t"]),t[10]||(t[10]=b(" (")),s(n,{t:"Current Version:"}),b(" "+h(r.dashboardConfigurationStore.Configuration.Server.version)+") ",1)])],8,We)):(o(),c("small",Ve,[s(n,{t:this.updateMessage},null,8,["t"]),b(" ("+h(r.dashboardConfigurationStore.Configuration.Server.version)+") ",1)]))])])])]),s($,{name:"zoom"},{default:d(()=>[this.openHelpModal?(o(),x(C,{key:0,onClose:t[2]||(t[2]=_=>{a.openHelpModal=!1})})):v("",!0)]),_:1}),s($,{name:"slideIn"},{default:d(()=>[this.openAgentModal?(o(),x(f,{key:0,onClose:t[3]||(t[3]=_=>a.openAgentModal=!1)})):v("",!0)]),_:1})],10,pe)}const Ue=S(_e,[["render",Oe],["__scopeId","data-v-58e71749"]]),je={name:"index",components:{Message:V,Navbar:Ue},async setup(){return{dashboardConfigurationStore:y()}},computed:{getMessages(){return this.dashboardConfigurationStore.Messages.filter(i=>i.show)}}},Be=["data-bs-theme"],Re={class:"row h-100"},Fe={class:"col-md-9 col-lg-10 overflow-y-scroll mb-0 pt-2"},Ie={class:"messageCentre text-body position-absolute d-flex"};function qe(i,t,g,r,a,l){const n=p("Navbar"),m=p("RouterView"),C=p("Message");return o(),c("div",{class:"container-fluid flex-grow-1 main","data-bs-theme":this.dashboardConfigurationStore.Configuration.Server.dashboard_theme},[e("div",Re,[s(n),e("main",Fe,[(o(),x(z,null,{default:d(()=>[s(m,null,{default:d(({Component:f})=>[s($,{name:"fade2",mode:"out-in",appear:""},{default:d(()=>[(o(),x(W(f)))]),_:2},1024)]),_:1})]),_:1})),e("div",Ie,[s(w,{name:"message",tag:"div",class:"position-relative flex-sm-grow-0 flex-grow-1 d-flex align-items-end ms-sm-auto flex-column gap-2"},{default:d(()=>[(o(!0),c(A,null,D(l.getMessages.slice().reverse(),f=>(o(),x(C,{message:f,key:f.id},null,8,["message"]))),128))]),_:1})])])])],8,Be)}const Ke=S(je,[["render",qe],["__scopeId","data-v-0c6a5068"]]);export{Ke as default}; diff --git a/src/static/app/dist/assets/index-CPB-8sFq.js b/src/static/app/dist/assets/index-DuEkGU1e.js similarity index 99% rename from src/static/app/dist/assets/index-CPB-8sFq.js rename to src/static/app/dist/assets/index-DuEkGU1e.js index 01db2c7..eddd715 100644 --- a/src/static/app/dist/assets/index-CPB-8sFq.js +++ b/src/static/app/dist/assets/index-DuEkGU1e.js @@ -1,4 +1,4 @@ -import{P as Ws,Q as Vs,R as Ue,U as Hn,r as Wn,o as Vn,V as Nn,H as jn,X as Xe,Y as $n,Z as Ns}from"./index-CfPziasH.js";/*! +import{P as Ws,Q as Vs,R as Ue,U as Hn,r as Wn,o as Vn,V as Nn,H as jn,X as Xe,Y as $n,Z as Ns}from"./index-AzYVPyhh.js";/*! * @kurkle/color v0.3.2 * https://github.com/kurkle/color#readme * (c) 2023 Jukka Kurkela diff --git a/src/static/app/dist/assets/localeText-CyxQ0Kz3.js b/src/static/app/dist/assets/localeText-qJNpKS91.js similarity index 76% rename from src/static/app/dist/assets/localeText-CyxQ0Kz3.js rename to src/static/app/dist/assets/localeText-qJNpKS91.js index c8f9c1c..9468eb7 100644 --- a/src/static/app/dist/assets/localeText-CyxQ0Kz3.js +++ b/src/static/app/dist/assets/localeText-qJNpKS91.js @@ -1 +1 @@ -import{_ as e,G as t,a as o,c as a,t as c}from"./index-CfPziasH.js";const s={name:"localeText",props:{t:""},computed:{getLocaleText(){return t(this.t)}}};function n(r,p,l,_,i,x){return o(),a("span",null,c(this.getLocaleText),1)}const u=e(s,[["render",n]]);export{u as L}; +import{_ as e,G as t,a as o,c as a,t as c}from"./index-AzYVPyhh.js";const s={name:"localeText",props:{t:""},computed:{getLocaleText(){return t(this.t)}}};function n(r,p,l,_,i,x){return o(),a("span",null,c(this.getLocaleText),1)}const u=e(s,[["render",n]]);export{u as L}; diff --git a/src/static/app/dist/assets/message-C4Yp0lwZ.js b/src/static/app/dist/assets/message-CTPyyUOY.js similarity index 84% rename from src/static/app/dist/assets/message-C4Yp0lwZ.js rename to src/static/app/dist/assets/message-CTPyyUOY.js index e1fbaf7..c3df836 100644 --- a/src/static/app/dist/assets/message-C4Yp0lwZ.js +++ b/src/static/app/dist/assets/message-CTPyyUOY.js @@ -1 +1 @@ -import{L as l}from"./localeText-CyxQ0Kz3.js";import{d as c}from"./dayjs.min-C4BEB1lt.js";import{_ as h,a as o,c as a,b as e,d as i,w as u,f as p,t as n,j as g,n as f,k as _}from"./index-CfPziasH.js";const x={name:"message",methods:{dayjs:c,hide(){this.ct(),this.message.show=!1},show(){this.timeout=setTimeout(()=>{this.message.show=!1},5e3)},ct(){clearTimeout(this.timeout)}},components:{LocaleText:l},props:{message:Object},mounted(){this.show()},data(){return{dismiss:!1,timeout:null}}},v=["id"],b={key:0,class:"d-flex"},w={class:"fw-bold d-block",style:{"text-transform":"uppercase"}},y={class:"ms-auto"},k={key:1},T={class:"card-body d-flex align-items-center gap-3"};function M(j,s,C,L,t,m){const d=_("LocaleText");return o(),a("div",{onMouseenter:s[1]||(s[1]=r=>{t.dismiss=!0,this.ct()}),onMouseleave:s[2]||(s[2]=r=>{t.dismiss=!1,this.show()}),class:"card shadow rounded-3 position-relative message ms-auto",id:this.message.id},[e("div",{class:f([{"text-bg-danger":this.message.type==="danger","text-bg-success":this.message.type==="success","text-bg-warning":this.message.type==="warning"},"card-header pos"])},[i(g,{name:"zoom",mode:"out-in"},{default:u(()=>[t.dismiss?(o(),a("div",k,[e("small",{onClick:s[0]||(s[0]=r=>m.hide()),class:"d-block mx-auto w-100 text-center",style:{cursor:"pointer"}},[s[3]||(s[3]=e("i",{class:"bi bi-x-lg me-2"},null,-1)),i(d,{t:"Dismiss"})])])):(o(),a("div",b,[e("small",w,[i(d,{t:"FROM "}),p(" "+n(this.message.from),1)]),e("small",y,n(m.dayjs().format("hh:mm A")),1)]))]),_:1})],2),e("div",T,[e("div",null,n(this.message.content),1)])],40,v)}const z=h(x,[["render",M],["__scopeId","data-v-94c76b54"]]);export{z as M}; +import{L as l}from"./localeText-qJNpKS91.js";import{d as c}from"./dayjs.min-DO3nadR-.js";import{_ as h,a as o,c as a,b as e,d as i,w as u,f as p,t as n,j as g,n as f,k as _}from"./index-AzYVPyhh.js";const x={name:"message",methods:{dayjs:c,hide(){this.ct(),this.message.show=!1},show(){this.timeout=setTimeout(()=>{this.message.show=!1},5e3)},ct(){clearTimeout(this.timeout)}},components:{LocaleText:l},props:{message:Object},mounted(){this.show()},data(){return{dismiss:!1,timeout:null}}},v=["id"],b={key:0,class:"d-flex"},w={class:"fw-bold d-block",style:{"text-transform":"uppercase"}},y={class:"ms-auto"},k={key:1},T={class:"card-body d-flex align-items-center gap-3"};function M(j,s,C,L,t,m){const d=_("LocaleText");return o(),a("div",{onMouseenter:s[1]||(s[1]=r=>{t.dismiss=!0,this.ct()}),onMouseleave:s[2]||(s[2]=r=>{t.dismiss=!1,this.show()}),class:"card shadow rounded-3 position-relative message ms-auto",id:this.message.id},[e("div",{class:f([{"text-bg-danger":this.message.type==="danger","text-bg-success":this.message.type==="success","text-bg-warning":this.message.type==="warning"},"card-header pos"])},[i(g,{name:"zoom",mode:"out-in"},{default:u(()=>[t.dismiss?(o(),a("div",k,[e("small",{onClick:s[0]||(s[0]=r=>m.hide()),class:"d-block mx-auto w-100 text-center",style:{cursor:"pointer"}},[s[3]||(s[3]=e("i",{class:"bi bi-x-lg me-2"},null,-1)),i(d,{t:"Dismiss"})])])):(o(),a("div",b,[e("small",w,[i(d,{t:"FROM "}),p(" "+n(this.message.from),1)]),e("small",y,n(m.dayjs().format("hh:mm A")),1)]))]),_:1})],2),e("div",T,[e("div",null,n(this.message.content),1)])],40,v)}const z=h(x,[["render",M],["__scopeId","data-v-94c76b54"]]);export{z as M}; diff --git a/src/static/app/dist/assets/newConfiguration-ChGJ7xSk.js b/src/static/app/dist/assets/newConfiguration-C6S0P_og.js similarity index 99% rename from src/static/app/dist/assets/newConfiguration-ChGJ7xSk.js rename to src/static/app/dist/assets/newConfiguration-C6S0P_og.js index 819c2b5..688934c 100644 --- a/src/static/app/dist/assets/newConfiguration-ChGJ7xSk.js +++ b/src/static/app/dist/assets/newConfiguration-C6S0P_og.js @@ -1,3 +1,3 @@ -import{p as P}from"./index-L60y6kc9.js";import{_ as x,W as L,r as k,g as S,D as K,A,c as l,b as t,d as a,w as U,n as v,e as b,m as p,y as h,t as g,f as w,F as y,h as _,k as C,a as d}from"./index-CfPziasH.js";import{L as I}from"./localeText-CyxQ0Kz3.js";const N=s=>{const e=s.split(` +import{p as P}from"./index-L60y6kc9.js";import{_ as x,W as L,r as k,g as S,D as K,A,c as l,b as t,d as a,w as U,n as v,e as b,m as p,y as h,t as g,f as w,F as y,h as _,k as C,a as d}from"./index-AzYVPyhh.js";import{L as I}from"./localeText-qJNpKS91.js";const N=s=>{const e=s.split(` `),i={};for(let c of e){if(c==="[Peer]")break;if(c.length>0){let n=c.replace(" = ","=");n.indexOf("=")>-1&&(n=[n.slice(0,n.indexOf("=")),n.slice(n.indexOf("=")+1)],n[0]==="ListenPort"?i[n[0]]=parseInt(n[1]):i[n[0]]=n[1])}}return i},O=s=>{const e=s.split(` `),i=[];let c=-1;const n=e.indexOf("[Peer]");if(n===-1)return!1;for(let u=n;u-1&&(f=[f.slice(0,f.indexOf("=")),f.slice(f.indexOf("=")+1)],i[c][f[0]]=f[1])}return i},q={name:"newConfiguration",components:{LocaleText:I},async setup(){const s=L(),e=k([]);await S("/api/protocolsEnabled",{},c=>{e.value=c.data});const i=K();return{store:s,protocols:e,dashboardStore:i}},data(){return{newConfiguration:{ConfigurationName:"",Address:"",ListenPort:"",PrivateKey:"",PublicKey:"",PresharedKey:"",PreUp:"",PreDown:"",PostUp:"",PostDown:"",Table:"",Protocol:"wg",Jc:5,Jmin:49,Jmax:998,S1:17,S2:110,H1:0,H2:0,H3:0,H4:0},numberOfAvailableIPs:"0",error:!1,errorMessage:"",success:!1,loading:!1,parseInterfaceResult:void 0,parsePeersResult:void 0}},created(){this.wireguardGenerateKeypair();let s=[];for(;[...new Set(s)].length!==4;)s=[this.rand(1,2**31-1),this.rand(1,2**31-1),this.rand(1,2**31-1),this.rand(1,2**31-1)];this.newConfiguration.H1=s[0],this.newConfiguration.H2=s[1],this.newConfiguration.H3=s[2],this.newConfiguration.H4=s[3]},methods:{rand(s,e){return Math.floor(Math.random()*(e-s)+s)},wireguardGenerateKeypair(){const s=window.wireguard.generateKeypair();this.newConfiguration.PrivateKey=s.privateKey,this.newConfiguration.PublicKey=s.publicKey,this.newConfiguration.PresharedKey=s.presharedKey},async saveNewConfiguration(){this.goodToSubmit&&(this.loading=!0,await A("/api/addWireguardConfiguration",this.newConfiguration,async s=>{s.status?(this.success=!0,await this.store.getConfigurations(),this.$router.push(`/configuration/${this.newConfiguration.ConfigurationName}/peers`)):(this.error=!0,this.errorMessage=s.message,document.querySelector(`#${s.data}`).classList.remove("is-valid"),document.querySelector(`#${s.data}`).classList.add("is-invalid"),this.loading=!1)}))},openFileUpload(){document.querySelector("#fileUpload").click()},readFile(s){const e=s.target.files[0];if(!e)return!1;const i=new FileReader;i.onload=c=>{this.parseInterfaceResult=N(c.target.result),this.parsePeersResult=O(c.target.result);let n=0;if(this.parseInterfaceResult){this.newConfiguration.ConfigurationName=e.name.replace(".conf","");for(let u of Object.keys(this.parseInterfaceResult))Object.keys(this.newConfiguration).includes(u)&&(this.newConfiguration[u]=this.parseInterfaceResult[u],n+=1)}n>0?this.dashboardStore.newMessage("WGDashboard",`Parse successful! Updated ${n} field(s)`,"success"):this.dashboardStore.newMessage("WGDashboard","Parse failed","danger")},i.readAsText(e)}},computed:{goodToSubmit(){let s=["ConfigurationName","Address","ListenPort","PrivateKey"],e=[...document.querySelectorAll("input[required]")];return s.find(i=>this.newConfiguration[i].length===0)===void 0&&e.find(i=>i.classList.contains("is-invalid"))===void 0}},watch:{"newConfiguration.Address"(s){let e=document.querySelector("#Address");e.classList.remove("is-invalid","is-valid");try{if(s.trim().split("/").filter(n=>n.length>0).length!==2)throw Error();let i=P(s),c=i.end-i.start;this.numberOfAvailableIPs=c.toLocaleString(),e.classList.add("is-valid")}catch{this.numberOfAvailableIPs="0",e.classList.add("is-invalid")}},"newConfiguration.ListenPort"(s){let e=document.querySelector("#ListenPort");e.classList.remove("is-invalid","is-valid"),s<0||s>65353||!Number.isInteger(s)?e.classList.add("is-invalid"):e.classList.add("is-valid")},"newConfiguration.ConfigurationName"(s){let e=document.querySelector("#ConfigurationName");e.classList.remove("is-invalid","is-valid"),!/^[a-zA-Z0-9_=+.-]{1,15}$/.test(s)||s.length===0||this.store.Configurations.find(i=>i.Name===s)?e.classList.add("is-invalid"):e.classList.add("is-valid")},"newConfiguration.PrivateKey"(s){let e=document.querySelector("#PrivateKey");e.classList.remove("is-invalid","is-valid");try{wireguard.generatePublicKey(s),e.classList.add("is-valid")}catch{e.classList.add("is-invalid")}}},mounted(){document.querySelector("#fileUpload").addEventListener("change",this.readFile,!1)}},D={class:"mt-md-5 mt-3 text-body"},R={class:"container mb-4"},H={class:"mb-4 d-flex align-items-center gap-4 align-items-center"},T={class:"mb-0"},$={class:"d-flex gap-2 ms-auto"},M={class:"card rounded-3 shadow"},F={class:"card-header"},G={class:"card-body d-flex gap-2 protocolBtnGroup"},V={key:0,class:"bi bi-check-circle-fill me-2"},B={key:1,class:"bi bi-circle me-2"},W={key:0,class:"bi bi-check-circle-fill me-2"},J={key:1,class:"bi bi-circle me-2"},E={class:"card rounded-3 shadow"},z={class:"card-header"},j={class:"card-body"},Z=["disabled"],Q={class:"invalid-feedback"},X={key:0},Y={key:1},ee={class:"mb-0"},te={class:"card rounded-3 shadow"},se={class:"card-header"},ie={class:"card-body",style:{"font-family":"var(--bs-font-monospace)"}},oe={class:"mb-2"},ne={class:"text-muted fw-bold mb-1"},ae={class:"input-group"},re=["disabled"],le={class:"text-muted fw-bold mb-1"},de={class:"card rounded-3 shadow"},ce={class:"card-header"},ue={class:"card-body"},fe=["disabled"],pe={class:"invalid-feedback"},he={key:0},ge={key:1},me={class:"card rounded-3 shadow"},be={class:"card-header d-flex align-items-center"},ve={class:"badge rounded-pill text-bg-success ms-auto"},we={class:"card-body"},ye=["disabled"],_e={class:"invalid-feedback"},Ce={key:0},Pe={key:1},xe={class:"accordion",id:"newConfigurationOptionalAccordion"},Le={class:"accordion-item"},ke={class:"accordion-header"},Se={class:"accordion-button collapsed",type:"button","data-bs-toggle":"collapse","data-bs-target":"#newConfigurationOptionalAccordionCollapse"},Ke={id:"newConfigurationOptionalAccordionCollapse",class:"accordion-collapse collapse","data-bs-parent":"#newConfigurationOptionalAccordion"},Ae={class:"accordion-body d-flex flex-column gap-3"},Ue={class:"card rounded-3"},Ie={class:"card-header"},Ne={class:"card-body"},Oe=["id","onUpdate:modelValue"],qe={class:"card rounded-3"},De={class:"card-header"},Re={class:"card-body"},He=["id","onUpdate:modelValue"],Te=["disabled"],$e={key:0,class:"d-flex w-100"},Me={key:1,class:"d-flex w-100"},Fe={key:2,class:"d-flex w-100 align-items-center"};function Ge(s,e,i,c,n,u){const f=C("RouterLink"),r=C("LocaleText");return d(),l("div",D,[t("div",R,[t("div",H,[a(f,{to:"/",class:"btn btn-dark btn-brand p-2 shadow",style:{"border-radius":"100%"}},{default:U(()=>e[10]||(e[10]=[t("h2",{class:"mb-0",style:{"line-height":"0"}},[t("i",{class:"bi bi-arrow-left-circle"})],-1)])),_:1}),t("h2",T,[a(r,{t:"New Configuration"})]),t("div",$,[t("button",{class:"titleBtn py-2 text-decoration-none btn text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle",onClick:e[0]||(e[0]=o=>u.openFileUpload()),type:"button","aria-expanded":"false"},[e[11]||(e[11]=t("i",{class:"bi bi-upload me-2"},null,-1)),a(r,{t:"Open File"})]),e[12]||(e[12]=t("input",{type:"file",id:"fileUpload",multiple:"",class:"d-none",accept:"text/plain"},null,-1))])]),t("form",{class:"text-body d-flex flex-column gap-3",onSubmit:e[9]||(e[9]=o=>{o.preventDefault(),this.saveNewConfiguration()})},[t("div",M,[t("div",F,[a(r,{t:"Protocol"})]),t("div",G,[this.protocols.includes("wg")?(d(),l("a",{key:0,onClick:e[1]||(e[1]=o=>this.newConfiguration.Protocol="wg"),class:v([{"opacity-50":this.newConfiguration.Protocol!=="wg"},"btn btn-primary wireguardBg border-0"]),style:{"flex-basis":"100%"}},[this.newConfiguration.Protocol==="wg"?(d(),l("i",V)):(d(),l("i",B)),e[13]||(e[13]=t("strong",null," WireGuard ",-1))],2)):b("",!0),this.protocols.includes("awg")?(d(),l("a",{key:1,onClick:e[2]||(e[2]=o=>this.newConfiguration.Protocol="awg"),class:v([{"opacity-50":this.newConfiguration.Protocol!=="awg"},"btn btn-primary amneziawgBg border-0"]),style:{"flex-basis":"100%"}},[this.newConfiguration.Protocol==="awg"?(d(),l("i",W)):(d(),l("i",J)),e[14]||(e[14]=t("strong",null," AmneziaWG ",-1))],2)):b("",!0)])]),t("div",E,[t("div",z,[a(r,{t:"Configuration Name"})]),t("div",j,[p(t("input",{type:"text",class:"form-control",placeholder:"ex. wg1",id:"ConfigurationName","onUpdate:modelValue":e[3]||(e[3]=o=>this.newConfiguration.ConfigurationName=o),disabled:this.loading,required:""},null,8,Z),[[h,this.newConfiguration.ConfigurationName]]),t("div",Q,[this.error?(d(),l("div",X,g(this.errorMessage),1)):(d(),l("div",Y,[a(r,{t:"Configuration name is invalid. Possible reasons:"}),t("ul",ee,[t("li",null,[a(r,{t:"Configuration name already exist."})]),t("li",null,[a(r,{t:"Configuration name can only contain 15 lower/uppercase alphabet, numbers, underscore, equal sign, plus sign, period and hyphen."})])])]))])])]),t("div",te,[t("div",se,[a(r,{t:"Private Key"}),e[15]||(e[15]=w(" & ")),a(r,{t:"Public Key"})]),t("div",ie,[t("div",oe,[t("label",ne,[t("small",null,[a(r,{t:"Private Key"})])]),t("div",ae,[p(t("input",{type:"text",class:"form-control",id:"PrivateKey",required:"",disabled:this.loading,"onUpdate:modelValue":e[4]||(e[4]=o=>this.newConfiguration.PrivateKey=o)},null,8,re),[[h,this.newConfiguration.PrivateKey]]),t("button",{class:"btn btn-outline-primary",type:"button",title:"Regenerate Private Key",onClick:e[5]||(e[5]=o=>u.wireguardGenerateKeypair())},e[16]||(e[16]=[t("i",{class:"bi bi-arrow-repeat"},null,-1)]))])]),t("div",null,[t("label",le,[t("small",null,[a(r,{t:"Public Key"})])]),p(t("input",{type:"text",class:"form-control",id:"PublicKey","onUpdate:modelValue":e[6]||(e[6]=o=>this.newConfiguration.PublicKey=o),disabled:""},null,512),[[h,this.newConfiguration.PublicKey]])])])]),t("div",de,[t("div",ce,[a(r,{t:"Listen Port"})]),t("div",ue,[p(t("input",{type:"number",class:"form-control",placeholder:"0-65353",id:"ListenPort",min:"1",max:"65353","onUpdate:modelValue":e[7]||(e[7]=o=>this.newConfiguration.ListenPort=o),disabled:this.loading,required:""},null,8,fe),[[h,this.newConfiguration.ListenPort]]),t("div",pe,[this.error?(d(),l("div",he,g(this.errorMessage),1)):(d(),l("div",ge,[a(r,{t:"Invalid port"})]))])])]),t("div",me,[t("div",be,[a(r,{t:"IP Address/CIDR"}),t("span",ve,[a(r,{t:n.numberOfAvailableIPs+" Available IP Address"},null,8,["t"])])]),t("div",we,[p(t("input",{type:"text",class:"form-control",placeholder:"Ex: 10.0.0.1/24",id:"Address","onUpdate:modelValue":e[8]||(e[8]=o=>this.newConfiguration.Address=o),disabled:this.loading,required:""},null,8,ye),[[h,this.newConfiguration.Address]]),t("div",_e,[this.error?(d(),l("div",Ce,g(this.errorMessage),1)):(d(),l("div",Pe," IP Address/CIDR is invalid "))])])]),e[21]||(e[21]=t("hr",null,null,-1)),t("div",xe,[t("div",Le,[t("h2",ke,[t("button",Se,[a(r,{t:"Optional Settings"})])]),t("div",Ke,[t("div",Ae,[(d(),l(y,null,_(["Table","PreUp","PreDown","PostUp","PostDown"],o=>t("div",Ue,[t("div",Ie,g(o),1),t("div",Ne,[p(t("input",{type:"text",class:"form-control font-monospace",id:o,"onUpdate:modelValue":m=>this.newConfiguration[o]=m},null,8,Oe),[[h,this.newConfiguration[o]]])])])),64)),this.newConfiguration.Protocol==="awg"?(d(),l(y,{key:0},_(["Jc","Jmin","Jmax","S1","S2","H1","H2","H3","H4"],o=>t("div",qe,[t("div",De,g(o),1),t("div",Re,[p(t("input",{type:"text",class:"form-control font-monospace",id:o,"onUpdate:modelValue":m=>this.newConfiguration[o]=m},null,8,He),[[h,this.newConfiguration[o]]])])])),64)):b("",!0)])])])]),t("button",{class:"btn btn-dark btn-brand rounded-3 px-3 py-2 shadow ms-auto",disabled:!this.goodToSubmit||this.loading||this.success},[this.success?(d(),l("span",$e,[a(r,{t:"Success"}),e[17]||(e[17]=w("! ")),e[18]||(e[18]=t("i",{class:"bi bi-check-circle-fill ms-2"},null,-1))])):this.loading?(d(),l("span",Fe,[a(r,{t:"Saving..."}),e[20]||(e[20]=t("span",{class:"ms-2 spinner-border spinner-border-sm",role:"status"},null,-1))])):(d(),l("span",Me,[e[19]||(e[19]=t("i",{class:"bi bi-save-fill me-2"},null,-1)),a(r,{t:"Save"})]))],8,Te)],32)])])}const Je=x(q,[["render",Ge],["__scopeId","data-v-b97242f3"]]);export{Je as default}; diff --git a/src/static/app/dist/assets/osmap-C6nMOrBf.js b/src/static/app/dist/assets/osmap-iyZf8b7y.js similarity index 99% rename from src/static/app/dist/assets/osmap-C6nMOrBf.js rename to src/static/app/dist/assets/osmap-iyZf8b7y.js index b2883d5..a9f53e5 100644 --- a/src/static/app/dist/assets/osmap-C6nMOrBf.js +++ b/src/static/app/dist/assets/osmap-iyZf8b7y.js @@ -1,4 +1,4 @@ -import{_ as el,D as il,a as nl,c as sl,e as rl}from"./index-CfPziasH.js";class fe{constructor(t){this.propagationStopped,this.defaultPrevented,this.type=t,this.target=null}preventDefault(){this.defaultPrevented=!0}stopPropagation(){this.propagationStopped=!0}}const di={PROPERTYCHANGE:"propertychange"};class Wn{constructor(){this.disposed=!1}dispose(){this.disposed||(this.disposed=!0,this.disposeInternal())}disposeInternal(){}}function ol(n,t,e){let i,s;e=e||ae;let r=0,o=n.length,a=!1;for(;r>1),s=+e(n[i],t),s<0?r=i+1:(o=i,a=!s);return a?r:~r}function ae(n,t){return n>t?1:n0?s-1:s}return i-1}if(e>0){for(let s=1;s0||o===0)})}function Wi(){return!0}function Zn(){return!1}function fi(){}function No(n){let t,e,i;return function(){const s=Array.prototype.slice.call(arguments);return(!e||this!==i||!Ae(s,e))&&(i=this,e=s,t=n.apply(this,arguments)),t}}function hl(n){function t(){let e;try{e=n()}catch(i){return Promise.reject(i)}return e instanceof Promise?e:Promise.resolve(e)}return t()}function nn(n){for(const t in n)delete n[t]}function gi(n){let t;for(t in n)return!1;return!t}class Kn extends Wn{constructor(t){super(),this.eventTarget_=t,this.pendingRemovals_=null,this.dispatching_=null,this.listeners_=null}addEventListener(t,e){if(!t||!e)return;const i=this.listeners_||(this.listeners_={}),s=i[t]||(i[t]=[]);s.includes(e)||s.push(e)}dispatchEvent(t){const e=typeof t=="string",i=e?t:t.type,s=this.listeners_&&this.listeners_[i];if(!s)return;const r=e?new fe(t):t;r.target||(r.target=this.eventTarget_||this);const o=this.dispatching_||(this.dispatching_={}),a=this.pendingRemovals_||(this.pendingRemovals_={});i in o||(o[i]=0,a[i]=0),++o[i];let l;for(let c=0,h=s.length;c0:!1}removeEventListener(t,e){if(!this.listeners_)return;const i=this.listeners_[t];if(!i)return;const s=i.indexOf(e);s!==-1&&(this.pendingRemovals_&&t in this.pendingRemovals_?(i[s]=fi,++this.pendingRemovals_[t]):(i.splice(s,1),i.length===0&&delete this.listeners_[t]))}}const z={CHANGE:"change",ERROR:"error",BLUR:"blur",CLEAR:"clear",CONTEXTMENU:"contextmenu",CLICK:"click",DBLCLICK:"dblclick",DRAGENTER:"dragenter",DRAGOVER:"dragover",DROP:"drop",FOCUS:"focus",KEYDOWN:"keydown",KEYPRESS:"keypress",LOAD:"load",RESIZE:"resize",TOUCHMOVE:"touchmove",WHEEL:"wheel"};function V(n,t,e,i,s){if(s){const o=e;e=function(){n.removeEventListener(t,e),o.apply(i??this,arguments)}}else i&&i!==n&&(e=e.bind(i));const r={target:n,type:t,listener:e};return n.addEventListener(t,e),r}function vn(n,t,e,i){return V(n,t,e,i,!0)}function tt(n){n&&n.target&&(n.target.removeEventListener(n.type,n.listener),nn(n))}class sn extends Kn{constructor(){super(),this.on=this.onInternal,this.once=this.onceInternal,this.un=this.unInternal,this.revision_=0}changed(){++this.revision_,this.dispatchEvent(z.CHANGE)}getRevision(){return this.revision_}onInternal(t,e){if(Array.isArray(t)){const i=t.length,s=new Array(i);for(let r=0;r0;)this.pop()}extend(t){for(let e=0,i=t.length;ethis.getLength())throw new Error("Index out of bounds: "+t);this.unique_&&this.assertUnique_(e),this.array_.splice(t,0,e),this.updateLength_(),this.dispatchEvent(new gn(wt.ADD,e,t))}pop(){return this.removeAt(this.getLength()-1)}push(t){this.unique_&&this.assertUnique_(t);const e=this.getLength();return this.insertAt(e,t),this.getLength()}remove(t){const e=this.array_;for(let i=0,s=e.length;i=this.getLength())return;const e=this.array_[t];return this.array_.splice(t,1),this.updateLength_(),this.dispatchEvent(new gn(wt.REMOVE,e,t)),e}setAt(t,e){const i=this.getLength();if(t>=i){this.insertAt(t,e);return}if(t<0)throw new Error("Index out of bounds: "+t);this.unique_&&this.assertUnique_(e,t);const s=this.array_[t];this.array_[t]=e,this.dispatchEvent(new gn(wt.REMOVE,s,t)),this.dispatchEvent(new gn(wt.ADD,e,t))}updateLength_(){this.set(Nr.LENGTH,this.array_.length)}assertUnique_(t,e){for(let i=0,s=this.array_.length;i1?(e=s,i=r):l>0&&(e+=o*l,i+=a*l)}return hi(n,t,e,i)}function hi(n,t,e,i){const s=e-n,r=i-t;return s*s+r*r}function fl(n){const t=n.length;for(let i=0;ir&&(r=l,s=a)}if(r===0)return null;const o=n[s];n[s]=n[i],n[i]=o;for(let a=i+1;a=0;i--){e[i]=n[i][t]/n[i][i];for(let s=i-1;s>=0;s--)n[s][t]-=n[s][i]*e[i]}return e}function In(n){return n*Math.PI/180}function ci(n,t){const e=n%t;return e*t<0?e+t:e}function St(n,t,e){return n+e*(t-n)}function Vs(n,t){const e=Math.pow(10,t);return Math.round(n*e)/e}function _n(n,t){return Math.floor(Vs(n,t))}function mn(n,t){return Math.ceil(Vs(n,t))}class Go extends $t{constructor(t){super(),this.on,this.once,this.un,this.background_=t.background;const e=Object.assign({},t);typeof t.properties=="object"&&(delete e.properties,Object.assign(e,t.properties)),e[J.OPACITY]=t.opacity!==void 0?t.opacity:1,j(typeof e[J.OPACITY]=="number","Layer opacity must be a number"),e[J.VISIBLE]=t.visible!==void 0?t.visible:!0,e[J.Z_INDEX]=t.zIndex,e[J.MAX_RESOLUTION]=t.maxResolution!==void 0?t.maxResolution:1/0,e[J.MIN_RESOLUTION]=t.minResolution!==void 0?t.minResolution:0,e[J.MIN_ZOOM]=t.minZoom!==void 0?t.minZoom:-1/0,e[J.MAX_ZOOM]=t.maxZoom!==void 0?t.maxZoom:1/0,this.className_=e.className!==void 0?e.className:"ol-layer",delete e.className,this.setProperties(e),this.state_=null}getBackground(){return this.background_}getClassName(){return this.className_}getLayerState(t){const e=this.state_||{layer:this,managed:t===void 0?!0:t},i=this.getZIndex();return e.opacity=st(Math.round(this.getOpacity()*100)/100,0,1),e.visible=this.getVisible(),e.extent=this.getExtent(),e.zIndex=i===void 0&&!e.managed?1/0:i,e.maxResolution=this.getMaxResolution(),e.minResolution=Math.max(this.getMinResolution(),0),e.minZoom=this.getMinZoom(),e.maxZoom=this.getMaxZoom(),this.state_=e,e}getLayersArray(t){return U()}getLayerStatesArray(t){return U()}getExtent(){return this.get(J.EXTENT)}getMaxResolution(){return this.get(J.MAX_RESOLUTION)}getMinResolution(){return this.get(J.MIN_RESOLUTION)}getMinZoom(){return this.get(J.MIN_ZOOM)}getMaxZoom(){return this.get(J.MAX_ZOOM)}getOpacity(){return this.get(J.OPACITY)}getSourceState(){return U()}getVisible(){return this.get(J.VISIBLE)}getZIndex(){return this.get(J.Z_INDEX)}setBackground(t){this.background_=t,this.changed()}setExtent(t){this.set(J.EXTENT,t)}setMaxResolution(t){this.set(J.MAX_RESOLUTION,t)}setMinResolution(t){this.set(J.MIN_RESOLUTION,t)}setMaxZoom(t){this.set(J.MAX_ZOOM,t)}setMinZoom(t){this.set(J.MIN_ZOOM,t)}setOpacity(t){j(typeof t=="number","Layer opacity must be a number"),this.set(J.OPACITY,t)}setVisible(t){this.set(J.VISIBLE,t)}setZIndex(t){this.set(J.Z_INDEX,t)}disposeInternal(){this.state_&&(this.state_.layer=null,this.state_=null),super.disposeInternal()}}const Ot={PRERENDER:"prerender",POSTRENDER:"postrender",PRECOMPOSE:"precompose",POSTCOMPOSE:"postcompose",RENDERCOMPLETE:"rendercomplete"},mt={ANIMATING:0,INTERACTING:1},Nt={CENTER:"center",RESOLUTION:"resolution",ROTATION:"rotation"},gl=42,Us=256,js={radians:6370997/(2*Math.PI),degrees:2*Math.PI*6370997/360,ft:.3048,m:1,"us-ft":1200/3937};class zo{constructor(t){this.code_=t.code,this.units_=t.units,this.extent_=t.extent!==void 0?t.extent:null,this.worldExtent_=t.worldExtent!==void 0?t.worldExtent:null,this.axisOrientation_=t.axisOrientation!==void 0?t.axisOrientation:"enu",this.global_=t.global!==void 0?t.global:!1,this.canWrapX_=!!(this.global_&&this.extent_),this.getPointResolutionFunc_=t.getPointResolution,this.defaultTileGrid_=null,this.metersPerUnit_=t.metersPerUnit}canWrapX(){return this.canWrapX_}getCode(){return this.code_}getExtent(){return this.extent_}getUnits(){return this.units_}getMetersPerUnit(){return this.metersPerUnit_||js[this.units_]}getWorldExtent(){return this.worldExtent_}getAxisOrientation(){return this.axisOrientation_}isGlobal(){return this.global_}setGlobal(t){this.global_=t,this.canWrapX_=!!(t&&this.extent_)}getDefaultTileGrid(){return this.defaultTileGrid_}setDefaultTileGrid(t){this.defaultTileGrid_=t}setExtent(t){this.extent_=t,this.canWrapX_=!!(this.global_&&t)}setWorldExtent(t){this.worldExtent_=t}setGetPointResolution(t){this.getPointResolutionFunc_=t}getPointResolutionFunc(){return this.getPointResolutionFunc_}}const rn=6378137,oi=Math.PI*rn,_l=[-oi,-oi,oi,oi],ml=[-180,-85,180,85],pn=rn*Math.log(Math.tan(Math.PI/2));class je extends zo{constructor(t){super({code:t,units:"m",extent:_l,global:!0,worldExtent:ml,getPointResolution:function(e,i){return e/Math.cosh(i[1]/rn)}})}}const Gr=[new je("EPSG:3857"),new je("EPSG:102100"),new je("EPSG:102113"),new je("EPSG:900913"),new je("http://www.opengis.net/def/crs/EPSG/0/3857"),new je("http://www.opengis.net/gml/srs/epsg.xml#3857")];function pl(n,t,e,i){const s=n.length;e=e>1?e:2,i=i??e,t===void 0&&(e>2?t=n.slice():t=new Array(s));for(let r=0;rpn?o=pn:o<-pn&&(o=-pn),t[r+1]=o}return t}function yl(n,t,e,i){const s=n.length;e=e>1?e:2,i=i??e,t===void 0&&(e>2?t=n.slice():t=new Array(s));for(let r=0;rs&&(l=l|ht.RIGHT),ar&&(l=l|ht.ABOVE),l===ht.UNKNOWN&&(l=ht.INTERSECTING),l}function Ft(){return[1/0,1/0,-1/0,-1/0]}function Se(n,t,e,i,s){return s?(s[0]=n,s[1]=t,s[2]=e,s[3]=i,s):[n,t,e,i]}function Bn(n){return Se(1/0,1/0,-1/0,-1/0,n)}function Yo(n,t){const e=n[0],i=n[1];return Se(e,i,e,i,t)}function $s(n,t,e,i,s){const r=Bn(s);return Zo(r,n,t,e,i)}function Yi(n,t){return n[0]==t[0]&&n[2]==t[2]&&n[1]==t[1]&&n[3]==t[3]}function Tl(n,t){return t[0]n[2]&&(n[2]=t[2]),t[1]n[3]&&(n[3]=t[3]),n}function zi(n,t){t[0]n[2]&&(n[2]=t[0]),t[1]n[3]&&(n[3]=t[1])}function Zo(n,t,e,i,s){for(;et[0]?i[0]=n[0]:i[0]=t[0],n[1]>t[1]?i[1]=n[1]:i[1]=t[1],n[2]=t[0]&&n[1]<=t[3]&&n[3]>=t[1]}function Hn(n){return n[2]=o&&_<=l),!i&&r&ht.RIGHT&&!(s&ht.RIGHT)&&(m=f-(d-l)*g,i=m>=a&&m<=c),!i&&r&ht.BELOW&&!(s&ht.BELOW)&&(_=d-(f-a)/g,i=_>=o&&_<=l),!i&&r&ht.LEFT&&!(s&ht.LEFT)&&(m=f-(d-o)*g,i=m>=a&&m<=c)}return i}function Bo(n,t){const e=t.getExtent(),i=Xe(n);if(t.canWrapX()&&(i[0]=e[2])){const s=q(e),o=Math.floor((i[0]-e[0])/s)*s;n[0]-=o,n[2]-=o}return n}function Js(n,t,e){if(t.canWrapX()){const i=t.getExtent();if(!isFinite(n[0])||!isFinite(n[2]))return[[i[0],n[1],i[2],n[3]]];Bo(n,t);const s=q(i);if(q(n)>s&&!e)return[[i[0],n[1],i[2],n[3]]];if(n[0]i[2])return[[n[0],n[1],i[2],n[3]],[i[0],n[1],n[2]-s,n[3]]]}return[n]}function Ml(n,t){return n[0]+=+t[0],n[1]+=+t[1],n}function Ln(n,t){let e=!0;for(let i=n.length-1;i>=0;--i)if(n[i]!=t[i]){e=!1;break}return e}function Qs(n,t){const e=Math.cos(t),i=Math.sin(t),s=n[0]*e-n[1]*i,r=n[1]*e+n[0]*i;return n[0]=s,n[1]=r,n}function bl(n,t){return n[0]*=t,n[1]*=t,n}function Vo(n,t){if(t.canWrapX()){const e=q(t.getExtent()),i=Dl(n,t,e);i&&(n[0]-=i*e)}return n}function Dl(n,t,e){const i=t.getExtent();let s=0;return t.canWrapX()&&(n[0]i[2])&&(e=e||q(i),s=Math.floor((n[0]-i[0])/e)),s}const Pl=63710088e-1;function Yr(n,t,e){e=e||Pl;const i=In(n[1]),s=In(t[1]),r=(s-i)/2,o=In(t[0]-n[0])/2,a=Math.sin(r)*Math.sin(r)+Math.sin(o)*Math.sin(o)*Math.cos(i)*Math.cos(s);return 2*e*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}function Uo(...n){console.warn(...n)}let Os=!0;function jo(n){Os=!1}function tr(n,t){if(t!==void 0){for(let e=0,i=n.length;e=-180&&n[0]<=180&&n[1]>=-90&&n[1]<=90&&(Os=!1,Uo("Call useGeographic() from ol/proj once to work with [longitude, latitude] coordinates.")),n}function $o(n,t){return n}function Te(n,t){return n}function Nl(){Kr(Gr),Kr(Xr),kl(Xr,Gr,pl,yl)}Nl();function Br(n,t,e){return function(i,s,r,o,a){if(!i)return;if(!s&&!t)return i;const l=t?0:r[0]*s,c=t?0:r[1]*s,h=a?a[0]:0,u=a?a[1]:0;let d=n[0]+l/2+h,f=n[2]-l/2+h,g=n[1]+c/2+u,_=n[3]-c/2+u;d>f&&(d=(f+d)/2,f=d),g>_&&(g=(_+g)/2,_=g);let m=st(i[0],d,f),p=st(i[1],g,_);if(o&&e&&s){const y=30*s;m+=-y*Math.log(1+Math.max(0,d-i[0])/y)+y*Math.log(1+Math.max(0,i[0]-f)/y),p+=-y*Math.log(1+Math.max(0,g-i[1])/y)+y*Math.log(1+Math.max(0,i[1]-_)/y)}return[m,p]}}function Gl(n){return n}function nr(n,t,e,i){const s=q(t)/e[0],r=pt(t)/e[1];return i?Math.min(n,Math.max(s,r)):Math.min(n,Math.min(s,r))}function sr(n,t,e){let i=Math.min(n,t);const s=50;return i*=Math.log(1+s*Math.max(0,n/t-1))/s+1,e&&(i=Math.max(i,e),i/=Math.log(1+s*Math.max(0,e/n-1))/s+1),st(i,e/2,t*2)}function zl(n,t,e,i){return t=t!==void 0?t:!0,function(s,r,o,a){if(s!==void 0){const l=n[0],c=n[n.length-1],h=e?nr(l,e,o,i):l;if(a)return t?sr(s,h,c):st(s,c,h);const u=Math.min(h,s),d=Math.floor(Bs(n,u,r));return n[d]>h&&dMath.round(e*jr[i])/jr[i]).join(", ")+")"}function ve(n,t,e,i,s,r,o){r=r||[],o=o||2;let a=0;for(let l=t;l{if(!i)return this.getSimplifiedGeometry(e);const s=this.clone();return s.applyTransform(i),s.getSimplifiedGeometry(e)})}simplifyTransformed(t,e){return this.simplifyTransformedInternal(this.getRevision(),t,e)}clone(){return U()}closestPointXY(t,e,i,s){return U()}containsXY(t,e){const i=this.getClosestPoint([t,e]);return i[0]===t&&i[1]===e}getClosestPoint(t,e){return e=e||[NaN,NaN],this.closestPointXY(t[0],t[1],e,1/0),e}intersectsCoordinate(t){return this.containsXY(t[0],t[1])}computeExtent(t){return U()}getExtent(t){if(this.extentRevision_!=this.getRevision()){const e=this.computeExtent(this.extent_);(isNaN(e[0])||isNaN(e[1]))&&Bn(e),this.extentRevision_=this.getRevision()}return Ll(this.extent_,t)}rotate(t,e){U()}scale(t,e,i){U()}simplify(t){return this.getSimplifiedGeometry(t*t)}getSimplifiedGeometry(t){return U()}getType(){return U()}applyTransform(t){U()}intersectsExtent(t){return U()}translate(t,e){U()}transform(t,e){const i=kt(t),s=i.getUnits()=="tile-pixels"?function(r,o,a){const l=i.getExtent(),c=i.getWorldExtent(),h=pt(c)/pt(l);return de(Hr,c[0],c[3],h,-h,0,0,0),ve(r,0,r.length,a,Hr,o),An(i,e)(r,o,a)}:An(i,e);return this.applyTransform(s),this}}class qn extends ql{constructor(){super(),this.layout="XY",this.stride=2,this.flatCoordinates}computeExtent(t){return $s(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t)}getCoordinates(){return U()}getFirstCoordinate(){return this.flatCoordinates.slice(0,this.stride)}getFlatCoordinates(){return this.flatCoordinates}getLastCoordinate(){return this.flatCoordinates.slice(this.flatCoordinates.length-this.stride)}getLayout(){return this.layout}getSimplifiedGeometry(t){if(this.simplifiedGeometryRevision!==this.getRevision()&&(this.simplifiedGeometryMaxMinSquaredTolerance=0,this.simplifiedGeometryRevision=this.getRevision()),t<0||this.simplifiedGeometryMaxMinSquaredTolerance!==0&&t<=this.simplifiedGeometryMaxMinSquaredTolerance)return this;const e=this.getSimplifiedGeometryInternal(t);return e.getFlatCoordinates().length1)u=e;else if(d>0){for(let f=0;fs&&(s=c),r=a,o=l}return s}function Ql(n,t,e,i,s){for(let r=0,o=e.length;r0;){const u=c.pop(),d=c.pop();let f=0;const g=n[d],_=n[d+1],m=n[u],p=n[u+1];for(let y=d+i;yf&&(h=y,f=w)}f>s&&(l[(h-t)/i]=1,d+i0&&_>f)&&(g<0&&m0&&m>g)){c=u,h=d;continue}r[o++]=c,r[o++]=h,a=c,l=h,c=u,h=d}return r[o++]=c,r[o++]=h,o}function ea(n,t,e,i,s,r,o,a){for(let l=0,c=e.length;lr&&(c-a)*(r-l)-(s-a)*(h-l)>0&&o++:h<=r&&(c-a)*(r-l)-(s-a)*(h-l)<0&&o--,a=c,l=h}return o!==0}function na(n,t,e,i,s,r){if(e.length===0||!Ne(n,t,e[0],i,s,r))return!1;for(let o=1,a=e.length;op&&(c=(h+u)/2,na(n,t,e,i,c,g)&&(m=c,p=y)),h=u}return isNaN(m)&&(m=s[r]),o?(o.push(m,g,p),o):[m,g,p]}function ah(n,t,e,i,s){let r=[];for(let o=0,a=e.length;o=s[0]&&r[2]<=s[2]||r[1]>=s[1]&&r[3]<=s[3]?!0:sa(n,t,e,i,function(o,a){return Al(s,o,a)}):!1}function ra(n,t,e,i,s){return!!(cr(n,t,e,i,s)||Ne(n,t,e,i,s[0],s[1])||Ne(n,t,e,i,s[0],s[3])||Ne(n,t,e,i,s[2],s[1])||Ne(n,t,e,i,s[2],s[3]))}function lh(n,t,e,i,s){if(!ra(n,t,e[0],i,s))return!1;if(e.length===1)return!0;for(let r=1,o=e.length;r0}function ch(n,t,e,i,s){s=s!==void 0?s:!1;for(let r=0,o=e.length;r1&&typeof arguments[e-1]=="function"&&(i=arguments[e-1],--e);let s=0;for(;s0}getInteracting(){return this.hints_[mt.INTERACTING]>0}cancelAnimations(){this.setHint(mt.ANIMATING,-this.hints_[mt.ANIMATING]);let t;for(let e=0,i=this.animations_.length;e=0;--i){const s=this.animations_[i];let r=!0;for(let o=0,a=s.length;o0?c/l.duration:1;h>=1?(l.complete=!0,h=1):r=!1;const u=l.easing(h);if(l.sourceCenter){const d=l.sourceCenter[0],f=l.sourceCenter[1],g=l.targetCenter[0],_=l.targetCenter[1];this.nextCenter_=l.targetCenter;const m=d+u*(g-d),p=f+u*(_-f);this.targetCenter_=[m,p]}if(l.sourceResolution&&l.targetResolution){const d=u===1?l.targetResolution:l.sourceResolution+u*(l.targetResolution-l.sourceResolution);if(l.anchor){const f=this.getViewportSize_(this.getRotation()),g=this.constraints_.resolution(d,0,f,!0);this.targetCenter_=this.calculateCenterZoom(g,l.anchor)}this.nextResolution_=l.targetResolution,this.targetResolution_=d,this.applyTargetState_(!0)}if(l.sourceRotation!==void 0&&l.targetRotation!==void 0){const d=u===1?ci(l.targetRotation+Math.PI,2*Math.PI)-Math.PI:l.sourceRotation+u*(l.targetRotation-l.sourceRotation);if(l.anchor){const f=this.constraints_.rotation(d,!0);this.targetCenter_=this.calculateCenterRotate(f,l.anchor)}this.nextRotation_=l.targetRotation,this.targetRotation_=d}if(this.applyTargetState_(!0),e=!0,!l.complete)break}if(r){this.animations_[i]=null,this.setHint(mt.ANIMATING,-1),this.nextCenter_=null,this.nextResolution_=NaN,this.nextRotation_=NaN;const o=s[0].callback;o&&yn(o,!0)}}this.animations_=this.animations_.filter(Boolean),e&&this.updateAnimationKey_===void 0&&(this.updateAnimationKey_=requestAnimationFrame(this.updateAnimations_.bind(this)))}calculateCenterRotate(t,e){let i;const s=this.getCenterInternal();return s!==void 0&&(i=[s[0]-e[0],s[1]-e[1]],Qs(i,t-this.getRotation()),Ml(i,e)),i}calculateCenterZoom(t,e){let i;const s=this.getCenterInternal(),r=this.getResolution();if(s!==void 0&&r!==void 0){const o=e[0]-t*(e[0]-s[0])/r,a=e[1]-t*(e[1]-s[1])/r;i=[o,a]}return i}getViewportSize_(t){const e=this.viewportSize_;if(t){const i=e[0],s=e[1];return[Math.abs(i*Math.cos(t))+Math.abs(s*Math.sin(t)),Math.abs(i*Math.sin(t))+Math.abs(s*Math.cos(t))]}return e}setViewportSize(t){this.viewportSize_=Array.isArray(t)?t.slice():[100,100],this.getAnimating()||this.resolveConstraints(0)}getCenter(){const t=this.getCenterInternal();return t&&Fs(t,this.getProjection())}getCenterInternal(){return this.get(Nt.CENTER)}getConstraints(){return this.constraints_}getConstrainResolution(){return this.get("constrainResolution")}getHints(t){return t!==void 0?(t[0]=this.hints_[0],t[1]=this.hints_[1],t):this.hints_.slice()}calculateExtent(t){const e=this.calculateExtentInternal(t);return $o(e,this.getProjection())}calculateExtentInternal(t){t=t||this.getViewportSizeMinusPadding_();const e=this.getCenterInternal();j(e,"The view center is not defined");const i=this.getResolution();j(i!==void 0,"The view resolution is not defined");const s=this.getRotation();return j(s!==void 0,"The view rotation is not defined"),Ps(e,i,s,t)}getMaxResolution(){return this.maxResolution_}getMinResolution(){return this.minResolution_}getMaxZoom(){return this.getZoomForResolution(this.minResolution_)}setMaxZoom(t){this.applyOptions_(this.getUpdatedOptions_({maxZoom:t}))}getMinZoom(){return this.getZoomForResolution(this.maxResolution_)}setMinZoom(t){this.applyOptions_(this.getUpdatedOptions_({minZoom:t}))}setConstrainResolution(t){this.applyOptions_(this.getUpdatedOptions_({constrainResolution:t}))}getProjection(){return this.projection_}getResolution(){return this.get(Nt.RESOLUTION)}getResolutions(){return this.resolutions_}getResolutionForExtent(t,e){return this.getResolutionForExtentInternal(Te(t,this.getProjection()),e)}getResolutionForExtentInternal(t,e){e=e||this.getViewportSizeMinusPadding_();const i=q(t)/e[0],s=pt(t)/e[1];return Math.max(i,s)}getResolutionForValueFunction(t){t=t||2;const e=this.getConstrainedResolution(this.maxResolution_),i=this.minResolution_,s=Math.log(e/i)/Math.log(t);return function(r){return e/Math.pow(t,r*s)}}getRotation(){return this.get(Nt.ROTATION)}getValueForResolutionFunction(t){const e=Math.log(t||2),i=this.getConstrainedResolution(this.maxResolution_),s=this.minResolution_,r=Math.log(i/s)/e;return function(o){return Math.log(i/o)/e/r}}getViewportSizeMinusPadding_(t){let e=this.getViewportSize_(t);const i=this.padding_;return i&&(e=[e[0]-i[1]-i[3],e[1]-i[0]-i[2]]),e}getState(){const t=this.getProjection(),e=this.getResolution(),i=this.getRotation();let s=this.getCenterInternal();const r=this.padding_;if(r){const o=this.getViewportSizeMinusPadding_();s=gs(s,this.getViewportSize_(),[o[0]/2+r[3],o[1]/2+r[0]],e,i)}return{center:s.slice(0),projection:t!==void 0?t:null,resolution:e,nextCenter:this.nextCenter_,nextResolution:this.nextResolution_,nextRotation:this.nextRotation_,rotation:i,zoom:this.getZoom()}}getViewStateAndExtent(){return{viewState:this.getState(),extent:this.calculateExtent()}}getZoom(){let t;const e=this.getResolution();return e!==void 0&&(t=this.getZoomForResolution(e)),t}getZoomForResolution(t){let e=this.minZoom_||0,i,s;if(this.resolutions_){const r=Bs(this.resolutions_,t,1);e=r,i=this.resolutions_[r],r==this.resolutions_.length-1?s=2:s=i/this.resolutions_[r+1]}else i=this.maxResolution_,s=this.zoomFactor_;return e+Math.log(i/t)/Math.log(s)}getResolutionForZoom(t){if(this.resolutions_?.length){if(this.resolutions_.length===1)return this.resolutions_[0];const e=st(Math.floor(t),0,this.resolutions_.length-2),i=this.resolutions_[e]/this.resolutions_[e+1];return this.resolutions_[e]/Math.pow(i,st(t-e,0,1))}return this.maxResolution_/Math.pow(this.zoomFactor_,t-this.minZoom_)}fit(t,e){let i;if(j(Array.isArray(t)||typeof t.getSimplifiedGeometry=="function","Invalid extent or geometry provided as `geometry`"),Array.isArray(t)){j(!Hn(t),"Cannot fit empty extent provided as `geometry`");const s=Te(t,this.getProjection());i=to(s)}else if(t.getType()==="Circle"){const s=Te(t.getExtent(),this.getProjection());i=to(s),i.rotate(this.getRotation(),Xe(s))}else i=t;this.fitInternal(i,e)}rotatedExtentForGeometry(t){const e=this.getRotation(),i=Math.cos(e),s=Math.sin(-e),r=t.getFlatCoordinates(),o=t.getStride();let a=1/0,l=1/0,c=-1/0,h=-1/0;for(let u=0,d=r.length;u{this.dispatchEvent("sourceready")},0))),this.changed()}getFeatures(t){return this.renderer_?this.renderer_.getFeatures(t):Promise.resolve([])}getData(t){return!this.renderer_||!this.rendered?null:this.renderer_.getData(t)}isVisible(t){let e;const i=this.getMapInternal();!t&&i&&(t=i.getView()),t instanceof Vt?e={viewState:t.getState(),extent:t.calculateExtent()}:e=t,!e.layerStatesArray&&i&&(e.layerStatesArray=i.getLayerGroup().getLayerStatesArray());let s;e.layerStatesArray?s=e.layerStatesArray.find(o=>o.layer===this):s=this.getLayerState();const r=this.getExtent();return dr(s,e.viewState)&&(!r||Tt(r,e.extent))}getAttributions(t){if(!this.isVisible(t))return[];const e=this.getSource()?.getAttributions();if(!e)return[];const i=t instanceof Vt?t.getViewStateAndExtent():t;let s=e(i);return Array.isArray(s)||(s=[s]),s}render(t,e){const i=this.getRenderer();return i.prepareFrame(t)?(this.rendered=!0,i.renderFrame(t,e)):null}unrender(){this.rendered=!1}getDeclutter(){}renderDeclutter(t,e){}renderDeferred(t){const e=this.getRenderer();e&&e.renderDeferred(t)}setMapInternal(t){t||this.unrender(),this.set(J.MAP,t)}getMapInternal(){return this.get(J.MAP)}setMap(t){this.mapPrecomposeKey_&&(tt(this.mapPrecomposeKey_),this.mapPrecomposeKey_=null),t||this.changed(),this.mapRenderKey_&&(tt(this.mapRenderKey_),this.mapRenderKey_=null),t&&(this.mapPrecomposeKey_=V(t,Ot.PRECOMPOSE,this.handlePrecompose_,this),this.mapRenderKey_=V(this,z.CHANGE,t.render,t),this.changed())}handlePrecompose_(t){const e=t.frameState.layerStatesArray,i=this.getLayerState(!1);j(!e.some(s=>s.layer===i.layer),"A layer can only be added to the map once. Use either `layer.setMap()` or `map.addLayer()`, not both."),e.push(i)}setSource(t){this.set(J.SOURCE,t)}getRenderer(){return this.renderer_||(this.renderer_=this.createRenderer()),this.renderer_}hasRenderer(){return!!this.renderer_}createRenderer(){return null}disposeInternal(){this.renderer_&&(this.renderer_.dispose(),delete this.renderer_),this.setSource(null),super.disposeInternal()}}function dr(n,t){if(!n.visible)return!1;const e=t.resolution;if(e=n.maxResolution)return!1;const i=t.zoom;return i>n.minZoom&&i<=n.maxZoom}function oa(n,t,e=0,i=n.length-1,s=mh){for(;i>e;){if(i-e>600){const l=i-e+1,c=t-e+1,h=Math.log(l),u=.5*Math.exp(2*h/3),d=.5*Math.sqrt(h*u*(l-u)/l)*(c-l/2<0?-1:1),f=Math.max(e,Math.floor(t-c*u/l+d)),g=Math.min(i,Math.floor(t+(l-c)*u/l+d));oa(n,t,f,g,s)}const r=n[t];let o=e,a=i;for(Ai(n,e,t),s(n[i],r)>0&&Ai(n,e,i);o0;)a--}s(n[e],r)===0?Ai(n,e,a):(a++,Ai(n,a,i)),a<=t&&(e=a+1),t<=a&&(i=a-1)}}function Ai(n,t,e){const i=n[t];n[t]=n[e],n[e]=i}function mh(n,t){return nt?1:0}let aa=class{constructor(t=9){this._maxEntries=Math.max(4,t),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()}all(){return this._all(this.data,[])}search(t){let e=this.data;const i=[];if(!xn(t,e))return i;const s=this.toBBox,r=[];for(;e;){for(let o=0;o=0&&r[e].children.length>this._maxEntries;)this._split(r,e),e--;this._adjustParentBBoxes(s,r,e)}_split(t,e){const i=t[e],s=i.children.length,r=this._minEntries;this._chooseSplitAxis(i,r,s);const o=this._chooseSplitIndex(i,r,s),a=ii(i.children.splice(o,i.children.length-o));a.height=i.height,a.leaf=i.leaf,He(i,this.toBBox),He(a,this.toBBox),e?t[e-1].children.push(a):this._splitRoot(i,a)}_splitRoot(t,e){this.data=ii([t,e]),this.data.height=t.height+1,this.data.leaf=!1,He(this.data,this.toBBox)}_chooseSplitIndex(t,e,i){let s,r=1/0,o=1/0;for(let a=e;a<=i-e;a++){const l=Pi(t,0,a,this.toBBox),c=Pi(t,a,i,this.toBBox),h=wh(l,c),u=_s(l)+_s(c);h=e;c--){const h=t.children[c];Oi(a,t.leaf?r(h):h),l+=En(a)}return l}_adjustParentBBoxes(t,e,i){for(let s=i;s>=0;s--)Oi(e[s],t)}_condense(t){for(let e=t.length-1,i;e>=0;e--)t[e].children.length===0?e>0?(i=t[e-1].children,i.splice(i.indexOf(t[e]),1)):this.clear():He(t[e],this.toBBox)}};function ph(n,t,e){if(!e)return t.indexOf(n);for(let i=0;i=n.minX&&t.maxY>=n.minY}function ii(n){return{children:n,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function eo(n,t,e,i,s){const r=[t,e];for(;r.length;){if(e=r.pop(),t=r.pop(),e-t<=i)continue;const o=t+Math.ceil((e-t)/i/2)*i;oa(n,o,t,e,s),r.push(t,o,o,e)}}const Y={IDLE:0,LOADING:1,LOADED:2,ERROR:3,EMPTY:4};function io(n){return n[0]>0&&n[1]>0}function Ch(n,t,e){return e===void 0&&(e=[0,0]),e[0]=n[0]*t+.5|0,e[1]=n[1]*t+.5|0,e}function vt(n,t){return Array.isArray(n)?n:(t===void 0?t=[n,n]:(t[0]=n,t[1]=n),t)}class Qn{constructor(t){this.opacity_=t.opacity,this.rotateWithView_=t.rotateWithView,this.rotation_=t.rotation,this.scale_=t.scale,this.scaleArray_=vt(t.scale),this.displacement_=t.displacement,this.declutterMode_=t.declutterMode}clone(){const t=this.getScale();return new Qn({opacity:this.getOpacity(),scale:Array.isArray(t)?t.slice():t,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()})}getOpacity(){return this.opacity_}getRotateWithView(){return this.rotateWithView_}getRotation(){return this.rotation_}getScale(){return this.scale_}getScaleArray(){return this.scaleArray_}getDisplacement(){return this.displacement_}getDeclutterMode(){return this.declutterMode_}getAnchor(){return U()}getImage(t){return U()}getHitDetectionImage(){return U()}getPixelRatio(t){return 1}getImageState(){return U()}getImageSize(){return U()}getOrigin(){return U()}getSize(){return U()}setDisplacement(t){this.displacement_=t}setOpacity(t){this.opacity_=t}setRotateWithView(t){this.rotateWithView_=t}setRotation(t){this.rotation_=t}setScale(t){this.scale_=t,this.scaleArray_=vt(t)}listenImageChange(t){U()}load(){U()}unlistenImageChange(t){U()}ready(){return Promise.resolve()}}const Ui={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]};var ft={name:"xyz",min:[0,0,0],channel:["X","Y","Z"],alias:["XYZ","ciexyz","cie1931"]};ft.whitepoint={2:{A:[109.85,100,35.585],C:[98.074,100,118.232],D50:[96.422,100,82.521],D55:[95.682,100,92.149],D65:[95.045592705167,100,108.9057750759878],D75:[94.972,100,122.638],F2:[99.187,100,67.395],F7:[95.044,100,108.755],F11:[100.966,100,64.37],E:[100,100,100]},10:{A:[111.144,100,35.2],C:[97.285,100,116.145],D50:[96.72,100,81.427],D55:[95.799,100,90.926],D65:[94.811,100,107.304],D75:[94.416,100,120.641],F2:[103.28,100,69.026],F7:[95.792,100,107.687],F11:[103.866,100,65.627],E:[100,100,100]}};ft.max=ft.whitepoint[2].D65;ft.rgb=function(n,t){t=t||ft.whitepoint[2].E;var e=n[0]/t[0],i=n[1]/t[1],s=n[2]/t[2],r,o,a;return r=e*3.240969941904521+i*-1.537383177570093+s*-.498610760293,o=e*-.96924363628087+i*1.87596750150772+s*.041555057407175,a=e*.055630079696993+i*-.20397695888897+s*1.056971514242878,r=r>.0031308?1.055*Math.pow(r,1/2.4)-.055:r=r*12.92,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o=o*12.92,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a=a*12.92,r=Math.min(Math.max(0,r),1),o=Math.min(Math.max(0,o),1),a=Math.min(Math.max(0,a),1),[r*255,o*255,a*255]};Ui.xyz=function(n,t){var e=n[0]/255,i=n[1]/255,s=n[2]/255;e=e>.04045?Math.pow((e+.055)/1.055,2.4):e/12.92,i=i>.04045?Math.pow((i+.055)/1.055,2.4):i/12.92,s=s>.04045?Math.pow((s+.055)/1.055,2.4):s/12.92;var r=e*.41239079926595+i*.35758433938387+s*.18048078840183,o=e*.21263900587151+i*.71516867876775+s*.072192315360733,a=e*.019330818715591+i*.11919477979462+s*.95053215224966;return t=t||ft.whitepoint[2].E,[r*t[0],o*t[1],a*t[2]]};const fr={name:"luv",min:[0,-134,-140],max:[100,224,122],channel:["lightness","u","v"],alias:["LUV","cieluv","cie1976"],xyz:function(n,t,e){var i,s,r,o,a,l,c,h,u,d,f,g,_;if(r=n[0],o=n[1],a=n[2],r===0)return[0,0,0];var m=.0011070564598794539;return t=t||"D65",e=e||2,u=ft.whitepoint[e][t][0],d=ft.whitepoint[e][t][1],f=ft.whitepoint[e][t][2],g=4*u/(u+15*d+3*f),_=9*d/(u+15*d+3*f),i=o/(13*r)+g||0,s=a/(13*r)+_||0,c=r>8?d*Math.pow((r+16)/116,3):d*r*m,l=c*9*i/(4*s)||0,h=c*(12-3*i-20*s)/(4*s)||0,[l,c,h]}};ft.luv=function(n,t,e){var i,s,r,o,a,l,c,h,u,d,f,g,_,m=.008856451679035631,p=903.2962962962961;t=t||"D65",e=e||2,u=ft.whitepoint[e][t][0],d=ft.whitepoint[e][t][1],f=ft.whitepoint[e][t][2],g=4*u/(u+15*d+3*f),_=9*d/(u+15*d+3*f),l=n[0],c=n[1],h=n[2],i=4*l/(l+15*c+3*h)||0,s=9*c/(l+15*c+3*h)||0;var y=c/d;return r=y<=m?p*y:116*Math.pow(y,1/3)-16,o=13*r*(i-g),a=13*r*(s-_),[r,o,a]};var la={name:"lchuv",channel:["lightness","chroma","hue"],alias:["LCHuv","cielchuv"],min:[0,0,0],max:[100,100,360],luv:function(n){var t=n[0],e=n[1],i=n[2],s,r,o;return o=i/360*2*Math.PI,s=e*Math.cos(o),r=e*Math.sin(o),[t,s,r]},xyz:function(n){return fr.xyz(la.luv(n))}};fr.lchuv=function(n){var t=n[0],e=n[1],i=n[2],s=Math.sqrt(e*e+i*i),r=Math.atan2(i,e),o=r*360/2/Math.PI;return o<0&&(o+=360),[t,s,o]};ft.lchuv=function(n){return fr.lchuv(ft.luv(n))};const no={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};var so={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function Rh(n){var t,e=[],i=1,s;if(typeof n=="number")return{space:"rgb",values:[n>>>16,(n&65280)>>>8,n&255],alpha:1};if(typeof n=="number")return{space:"rgb",values:[n>>>16,(n&65280)>>>8,n&255],alpha:1};if(n=String(n).toLowerCase(),no[n])e=no[n].slice(),s="rgb";else if(n==="transparent")i=0,s="rgb",e=[0,0,0];else if(n[0]==="#"){var r=n.slice(1),o=r.length,a=o<=4;i=1,a?(e=[parseInt(r[0]+r[0],16),parseInt(r[1]+r[1],16),parseInt(r[2]+r[2],16)],o===4&&(i=parseInt(r[3]+r[3],16)/255)):(e=[parseInt(r[0]+r[1],16),parseInt(r[2]+r[3],16),parseInt(r[4]+r[5],16)],o===8&&(i=parseInt(r[6]+r[7],16)/255)),e[0]||(e[0]=0),e[1]||(e[1]=0),e[2]||(e[2]=0),s="rgb"}else if(t=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(n)){var l=t[1];s=l.replace(/a$/,"");var c=s==="cmyk"?4:s==="gray"?1:3;e=t[2].trim().split(/\s*[,\/]\s*|\s+/),s==="color"&&(s=e.shift()),e=e.map(function(h,u){if(h[h.length-1]==="%")return h=parseFloat(h)/100,u===3?h:s==="rgb"?h*255:s[0]==="h"||s[0]==="l"&&!u?h*100:s==="lab"?h*125:s==="lch"?u<2?h*150:h*360:s[0]==="o"&&!u?h:s==="oklab"?h*.4:s==="oklch"?u<2?h*.4:h*360:h;if(s[u]==="h"||u===2&&s[s.length-1]==="h"){if(so[h]!==void 0)return so[h];if(h.endsWith("deg"))return parseFloat(h);if(h.endsWith("turn"))return parseFloat(h)*360;if(h.endsWith("grad"))return parseFloat(h)*360/400;if(h.endsWith("rad"))return parseFloat(h)*180/Math.PI}return h==="none"?0:parseFloat(h)}),i=e.length>c?e.pop():1}else/[0-9](?:\s|\/|,)/.test(n)&&(e=n.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),s=n.match(/([a-z])/ig)?.join("")?.toLowerCase()||"rgb");return{space:s,values:e,alpha:i}}const ps={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(n){var t=n[0]/360,e=n[1]/100,i=n[2]/100,s,r,o,a,l,c=0;if(e===0)return l=i*255,[l,l,l];for(r=i<.5?i*(1+e):i+e-i*e,s=2*i-r,a=[0,0,0];c<3;)o=t+1/3*-(c-1),o<0?o++:o>1&&o--,l=6*o<1?s+(r-s)*6*o:2*o<1?r:3*o<2?s+(r-s)*(2/3-o)*6:s,a[c++]=l*255;return a}};Ui.hsl=function(n){var t=n[0]/255,e=n[1]/255,i=n[2]/255,s=Math.min(t,e,i),r=Math.max(t,e,i),o=r-s,a,l,c;return r===s?a=0:t===r?a=(e-i)/o:e===r?a=2+(i-t)/o:i===r&&(a=4+(t-e)/o),a=Math.min(a*60,360),a<0&&(a+=360),c=(s+r)/2,r===s?l=0:c<=.5?l=o/(r+s):l=o/(2-r-s),[a,l*100,c*100]};function Th(n){Array.isArray(n)&&n.raw&&(n=String.raw(...arguments)),n instanceof Number&&(n=+n);var t,e=Rh(n);if(!e.space)return[];const i=e.space[0]==="h"?ps.min:Ui.min,s=e.space[0]==="h"?ps.max:Ui.max;return t=Array(3),t[0]=Math.min(Math.max(e.values[0],i[0]),s[0]),t[1]=Math.min(Math.max(e.values[1],i[1]),s[1]),t[2]=Math.min(Math.max(e.values[2],i[2]),s[2]),e.space[0]==="h"&&(t=ps.rgb(t)),t.push(Math.min(Math.max(e.alpha,0),1)),t}const gr=[NaN,NaN,NaN,0];function Ih(n){return typeof n=="string"?n:mr(n)}const vh=1024,Mi={};let ys=0;function Sh(n){if(n.length===4)return n;const t=n.slice();return t[3]=1,t}function ro(n){const t=ft.lchuv(Ui.xyz(n));return t[3]=n[3],t}function Lh(n){const t=ft.rgb(la.xyz(n));return t[3]=n[3],t}function _r(n){if(n==="none")return gr;if(Mi.hasOwnProperty(n))return Mi[n];if(ys>=vh){let e=0;for(const i in Mi)e++&3||(delete Mi[i],--ys)}const t=Th(n);if(t.length!==4)throw new Error('failed to parse "'+n+'" as color');for(const e of t)if(isNaN(e))throw new Error('failed to parse "'+n+'" as color');return ha(t),Mi[n]=t,++ys,t}function ji(n){return Array.isArray(n)?n:_r(n)}function ha(n){return n[0]=st(n[0]+.5|0,0,255),n[1]=st(n[1]+.5|0,0,255),n[2]=st(n[2]+.5|0,0,255),n[3]=st(n[3],0,1),n}function mr(n){let t=n[0];t!=(t|0)&&(t=t+.5|0);let e=n[1];e!=(e|0)&&(e=e+.5|0);let i=n[2];i!=(i|0)&&(i=i+.5|0);const s=n[3]===void 0?1:Math.round(n[3]*1e3)/1e3;return"rgba("+t+","+e+","+i+","+s+")"}const Le=typeof navigator<"u"&&typeof navigator.userAgent<"u"?navigator.userAgent.toLowerCase():"",Ah=Le.includes("firefox"),Mh=Le.includes("safari")&&!Le.includes("chrom");Mh&&(Le.includes("version/15.4")||/cpu (os|iphone os) 15_4 like mac os x/.test(Le));const bh=Le.includes("webkit")&&!Le.includes("edge"),ca=Le.includes("macintosh"),ua=typeof devicePixelRatio<"u"?devicePixelRatio:1,da=typeof WorkerGlobalScope<"u"&&typeof OffscreenCanvas<"u"&&self instanceof WorkerGlobalScope,fa=typeof Image<"u"&&Image.prototype.decode,ga=function(){let n=!1;try{const t=Object.defineProperty({},"passive",{get:function(){n=!0}});window.addEventListener("_",null,t),window.removeEventListener("_",null,t)}catch{}return n}();function rt(n,t,e,i){let s;return e&&e.length?s=e.shift():da?s=new OffscreenCanvas(n||300,t||300):s=document.createElement("canvas"),n&&(s.width=n),t&&(s.height=t),s.getContext("2d",i)}let Es;function bn(){return Es||(Es=rt(1,1)),Es}function mi(n){const t=n.canvas;t.width=1,t.height=1,n.clearRect(0,0,1,1)}function oo(n,t){const e=t.parentNode;e&&e.replaceChild(n,t)}function Dh(n){for(;n.lastChild;)n.lastChild.remove()}function Ph(n,t){const e=n.childNodes;for(let i=0;;++i){const s=e[i],r=t[i];if(!s&&!r)break;if(s!==r){if(!s){n.appendChild(r);continue}if(!r){n.removeChild(s),--i;continue}n.insertBefore(r,s)}}}function Oh(n,t,e){const i=n;let s=!0,r=!1,o=!1;const a=[vn(i,z.LOAD,function(){o=!0,r||t()})];return i.src&&fa?(r=!0,i.decode().then(function(){s&&t()}).catch(function(l){s&&(o?t():e())})):a.push(vn(i,z.ERROR,e)),function(){s=!1,a.forEach(tt)}}function Fh(n,t){return new Promise((e,i)=>{function s(){o(),e(n)}function r(){o(),i(new Error("Image load error"))}function o(){n.removeEventListener("load",s),n.removeEventListener("error",r)}n.addEventListener("load",s),n.addEventListener("error",r)})}function kh(n,t){return t&&(n.src=t),n.src&&fa?new Promise((e,i)=>n.decode().then(()=>e(n)).catch(s=>n.complete&&n.width?e(n):i(s))):Fh(n)}class Nh{constructor(){this.cache_={},this.patternCache_={},this.cacheSize_=0,this.maxCacheSize_=32}clear(){this.cache_={},this.patternCache_={},this.cacheSize_=0}canExpireCache(){return this.cacheSize_>this.maxCacheSize_}expire(){if(this.canExpireCache()){let t=0;for(const e in this.cache_){const i=this.cache_[e];!(t++&3)&&!i.hasListener()&&(delete this.cache_[e],delete this.patternCache_[e],--this.cacheSize_)}}}get(t,e,i){const s=xs(t,e,i);return s in this.cache_?this.cache_[s]:null}getPattern(t,e,i){const s=xs(t,e,i);return s in this.patternCache_?this.patternCache_[s]:null}set(t,e,i,s,r){const o=xs(t,e,i),a=o in this.cache_;this.cache_[o]=s,r&&(s.getImageState()===Y.IDLE&&s.load(),s.getImageState()===Y.LOADING?s.ready().then(()=>{this.patternCache_[o]=bn().createPattern(s.getImage(1),"repeat")}):this.patternCache_[o]=bn().createPattern(s.getImage(1),"repeat")),a||++this.cacheSize_}setSize(t){this.maxCacheSize_=t,this.expire()}}function xs(n,t,e){const i=e?ji(e):"null";return t+":"+n+":"+i}const Ht=new Nh;let bi=null;class Gh extends Kn{constructor(t,e,i,s,r){super(),this.hitDetectionImage_=null,this.image_=t,this.crossOrigin_=i,this.canvas_={},this.color_=r,this.imageState_=s===void 0?Y.IDLE:s,this.size_=t&&t.width&&t.height?[t.width,t.height]:null,this.src_=e,this.tainted_,this.ready_=null}initializeImage_(){this.image_=new Image,this.crossOrigin_!==null&&(this.image_.crossOrigin=this.crossOrigin_)}isTainted_(){if(this.tainted_===void 0&&this.imageState_===Y.LOADED){bi||(bi=rt(1,1,void 0,{willReadFrequently:!0})),bi.drawImage(this.image_,0,0);try{bi.getImageData(0,0,1,1),this.tainted_=!1}catch{bi=null,this.tainted_=!0}}return this.tainted_===!0}dispatchChangeEvent_(){this.dispatchEvent(z.CHANGE)}handleImageError_(){this.imageState_=Y.ERROR,this.dispatchChangeEvent_()}handleImageLoad_(){this.imageState_=Y.LOADED,this.size_=[this.image_.width,this.image_.height],this.dispatchChangeEvent_()}getImage(t){return this.image_||this.initializeImage_(),this.replaceColor_(t),this.canvas_[t]?this.canvas_[t]:this.image_}getPixelRatio(t){return this.replaceColor_(t),this.canvas_[t]?t:1}getImageState(){return this.imageState_}getHitDetectionImage(){if(this.image_||this.initializeImage_(),!this.hitDetectionImage_)if(this.isTainted_()){const t=this.size_[0],e=this.size_[1],i=rt(t,e);i.fillRect(0,0,t,e),this.hitDetectionImage_=i.canvas}else this.hitDetectionImage_=this.image_;return this.hitDetectionImage_}getSize(){return this.size_}getSrc(){return this.src_}load(){if(this.imageState_===Y.IDLE){this.image_||this.initializeImage_(),this.imageState_=Y.LOADING;try{this.src_!==void 0&&(this.image_.src=this.src_)}catch{this.handleImageError_()}this.image_ instanceof HTMLImageElement&&kh(this.image_,this.src_).then(t=>{this.image_=t,this.handleImageLoad_()}).catch(this.handleImageError_.bind(this))}}replaceColor_(t){if(!this.color_||this.canvas_[t]||this.imageState_!==Y.LOADED)return;const e=this.image_,i=rt(Math.ceil(e.width*t),Math.ceil(e.height*t)),s=i.canvas;i.scale(t,t),i.drawImage(e,0,0),i.globalCompositeOperation="multiply",i.fillStyle=Ih(this.color_),i.fillRect(0,0,s.width/t,s.height/t),i.globalCompositeOperation="destination-in",i.drawImage(e,0,0),this.canvas_[t]=s}ready(){return this.ready_||(this.ready_=new Promise(t=>{if(this.imageState_===Y.LOADED||this.imageState_===Y.ERROR)t();else{const e=()=>{(this.imageState_===Y.LOADED||this.imageState_===Y.ERROR)&&(this.removeEventListener(z.CHANGE,e),t())};this.addEventListener(z.CHANGE,e)}})),this.ready_}}function pr(n,t,e,i,s,r){let o=t===void 0?void 0:Ht.get(t,e,s);return o||(o=new Gh(n,n&&"src"in n?n.src||void 0:t,e,i,s),Ht.set(t,e,s,o,r)),r&&o&&!Ht.getPattern(t,e,s)&&Ht.set(t,e,s,o,r),o}function qt(n){return n?Array.isArray(n)?mr(n):typeof n=="object"&&"src"in n?zh(n):n:null}function zh(n){if(!n.offset||!n.size)return Ht.getPattern(n.src,"anonymous",n.color);const t=n.src+":"+n.offset,e=Ht.getPattern(t,void 0,n.color);if(e)return e;const i=Ht.get(n.src,"anonymous",null);if(i.getImageState()!==Y.LOADED)return null;const s=rt(n.size[0],n.size[1]);return s.drawImage(i.getImage(1),n.offset[0],n.offset[1],n.size[0],n.size[1],0,0,n.size[0],n.size[1]),pr(s.canvas,t,void 0,Y.LOADED,n.color,!0),Ht.getPattern(t,void 0,n.color)}const wn="ol-hidden",ts="ol-unselectable",yr="ol-control",ao="ol-collapsed",Xh=new RegExp(["^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)","(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)","(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00 ))?)","(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?","(?:small|large)|medium|smaller|larger|[\\.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))","(?:\\s*\\/\\s*(normal|[\\.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])?))",`?\\s*([-,\\"\\'\\sa-z]+?)\\s*$`].join(""),"i"),lo=["style","variant","weight","size","lineHeight","family"],_a=function(n){const t=n.match(Xh);if(!t)return null;const e={lineHeight:"normal",size:"1.2em",style:"normal",weight:"normal",variant:"normal"};for(let i=0,s=lo.length;i>1),s=+e(n[i],t),s<0?r=i+1:(o=i,a=!s);return a?r:~r}function ae(n,t){return n>t?1:n0?s-1:s}return i-1}if(e>0){for(let s=1;s0||o===0)})}function Wi(){return!0}function Zn(){return!1}function fi(){}function No(n){let t,e,i;return function(){const s=Array.prototype.slice.call(arguments);return(!e||this!==i||!Ae(s,e))&&(i=this,e=s,t=n.apply(this,arguments)),t}}function hl(n){function t(){let e;try{e=n()}catch(i){return Promise.reject(i)}return e instanceof Promise?e:Promise.resolve(e)}return t()}function nn(n){for(const t in n)delete n[t]}function gi(n){let t;for(t in n)return!1;return!t}class Kn extends Wn{constructor(t){super(),this.eventTarget_=t,this.pendingRemovals_=null,this.dispatching_=null,this.listeners_=null}addEventListener(t,e){if(!t||!e)return;const i=this.listeners_||(this.listeners_={}),s=i[t]||(i[t]=[]);s.includes(e)||s.push(e)}dispatchEvent(t){const e=typeof t=="string",i=e?t:t.type,s=this.listeners_&&this.listeners_[i];if(!s)return;const r=e?new fe(t):t;r.target||(r.target=this.eventTarget_||this);const o=this.dispatching_||(this.dispatching_={}),a=this.pendingRemovals_||(this.pendingRemovals_={});i in o||(o[i]=0,a[i]=0),++o[i];let l;for(let c=0,h=s.length;c0:!1}removeEventListener(t,e){if(!this.listeners_)return;const i=this.listeners_[t];if(!i)return;const s=i.indexOf(e);s!==-1&&(this.pendingRemovals_&&t in this.pendingRemovals_?(i[s]=fi,++this.pendingRemovals_[t]):(i.splice(s,1),i.length===0&&delete this.listeners_[t]))}}const z={CHANGE:"change",ERROR:"error",BLUR:"blur",CLEAR:"clear",CONTEXTMENU:"contextmenu",CLICK:"click",DBLCLICK:"dblclick",DRAGENTER:"dragenter",DRAGOVER:"dragover",DROP:"drop",FOCUS:"focus",KEYDOWN:"keydown",KEYPRESS:"keypress",LOAD:"load",RESIZE:"resize",TOUCHMOVE:"touchmove",WHEEL:"wheel"};function V(n,t,e,i,s){if(s){const o=e;e=function(){n.removeEventListener(t,e),o.apply(i??this,arguments)}}else i&&i!==n&&(e=e.bind(i));const r={target:n,type:t,listener:e};return n.addEventListener(t,e),r}function vn(n,t,e,i){return V(n,t,e,i,!0)}function tt(n){n&&n.target&&(n.target.removeEventListener(n.type,n.listener),nn(n))}class sn extends Kn{constructor(){super(),this.on=this.onInternal,this.once=this.onceInternal,this.un=this.unInternal,this.revision_=0}changed(){++this.revision_,this.dispatchEvent(z.CHANGE)}getRevision(){return this.revision_}onInternal(t,e){if(Array.isArray(t)){const i=t.length,s=new Array(i);for(let r=0;r0;)this.pop()}extend(t){for(let e=0,i=t.length;ethis.getLength())throw new Error("Index out of bounds: "+t);this.unique_&&this.assertUnique_(e),this.array_.splice(t,0,e),this.updateLength_(),this.dispatchEvent(new gn(wt.ADD,e,t))}pop(){return this.removeAt(this.getLength()-1)}push(t){this.unique_&&this.assertUnique_(t);const e=this.getLength();return this.insertAt(e,t),this.getLength()}remove(t){const e=this.array_;for(let i=0,s=e.length;i=this.getLength())return;const e=this.array_[t];return this.array_.splice(t,1),this.updateLength_(),this.dispatchEvent(new gn(wt.REMOVE,e,t)),e}setAt(t,e){const i=this.getLength();if(t>=i){this.insertAt(t,e);return}if(t<0)throw new Error("Index out of bounds: "+t);this.unique_&&this.assertUnique_(e,t);const s=this.array_[t];this.array_[t]=e,this.dispatchEvent(new gn(wt.REMOVE,s,t)),this.dispatchEvent(new gn(wt.ADD,e,t))}updateLength_(){this.set(Nr.LENGTH,this.array_.length)}assertUnique_(t,e){for(let i=0,s=this.array_.length;i1?(e=s,i=r):l>0&&(e+=o*l,i+=a*l)}return hi(n,t,e,i)}function hi(n,t,e,i){const s=e-n,r=i-t;return s*s+r*r}function fl(n){const t=n.length;for(let i=0;ir&&(r=l,s=a)}if(r===0)return null;const o=n[s];n[s]=n[i],n[i]=o;for(let a=i+1;a=0;i--){e[i]=n[i][t]/n[i][i];for(let s=i-1;s>=0;s--)n[s][t]-=n[s][i]*e[i]}return e}function In(n){return n*Math.PI/180}function ci(n,t){const e=n%t;return e*t<0?e+t:e}function St(n,t,e){return n+e*(t-n)}function Vs(n,t){const e=Math.pow(10,t);return Math.round(n*e)/e}function _n(n,t){return Math.floor(Vs(n,t))}function mn(n,t){return Math.ceil(Vs(n,t))}class Go extends $t{constructor(t){super(),this.on,this.once,this.un,this.background_=t.background;const e=Object.assign({},t);typeof t.properties=="object"&&(delete e.properties,Object.assign(e,t.properties)),e[J.OPACITY]=t.opacity!==void 0?t.opacity:1,j(typeof e[J.OPACITY]=="number","Layer opacity must be a number"),e[J.VISIBLE]=t.visible!==void 0?t.visible:!0,e[J.Z_INDEX]=t.zIndex,e[J.MAX_RESOLUTION]=t.maxResolution!==void 0?t.maxResolution:1/0,e[J.MIN_RESOLUTION]=t.minResolution!==void 0?t.minResolution:0,e[J.MIN_ZOOM]=t.minZoom!==void 0?t.minZoom:-1/0,e[J.MAX_ZOOM]=t.maxZoom!==void 0?t.maxZoom:1/0,this.className_=e.className!==void 0?e.className:"ol-layer",delete e.className,this.setProperties(e),this.state_=null}getBackground(){return this.background_}getClassName(){return this.className_}getLayerState(t){const e=this.state_||{layer:this,managed:t===void 0?!0:t},i=this.getZIndex();return e.opacity=st(Math.round(this.getOpacity()*100)/100,0,1),e.visible=this.getVisible(),e.extent=this.getExtent(),e.zIndex=i===void 0&&!e.managed?1/0:i,e.maxResolution=this.getMaxResolution(),e.minResolution=Math.max(this.getMinResolution(),0),e.minZoom=this.getMinZoom(),e.maxZoom=this.getMaxZoom(),this.state_=e,e}getLayersArray(t){return U()}getLayerStatesArray(t){return U()}getExtent(){return this.get(J.EXTENT)}getMaxResolution(){return this.get(J.MAX_RESOLUTION)}getMinResolution(){return this.get(J.MIN_RESOLUTION)}getMinZoom(){return this.get(J.MIN_ZOOM)}getMaxZoom(){return this.get(J.MAX_ZOOM)}getOpacity(){return this.get(J.OPACITY)}getSourceState(){return U()}getVisible(){return this.get(J.VISIBLE)}getZIndex(){return this.get(J.Z_INDEX)}setBackground(t){this.background_=t,this.changed()}setExtent(t){this.set(J.EXTENT,t)}setMaxResolution(t){this.set(J.MAX_RESOLUTION,t)}setMinResolution(t){this.set(J.MIN_RESOLUTION,t)}setMaxZoom(t){this.set(J.MAX_ZOOM,t)}setMinZoom(t){this.set(J.MIN_ZOOM,t)}setOpacity(t){j(typeof t=="number","Layer opacity must be a number"),this.set(J.OPACITY,t)}setVisible(t){this.set(J.VISIBLE,t)}setZIndex(t){this.set(J.Z_INDEX,t)}disposeInternal(){this.state_&&(this.state_.layer=null,this.state_=null),super.disposeInternal()}}const Ot={PRERENDER:"prerender",POSTRENDER:"postrender",PRECOMPOSE:"precompose",POSTCOMPOSE:"postcompose",RENDERCOMPLETE:"rendercomplete"},mt={ANIMATING:0,INTERACTING:1},Nt={CENTER:"center",RESOLUTION:"resolution",ROTATION:"rotation"},gl=42,Us=256,js={radians:6370997/(2*Math.PI),degrees:2*Math.PI*6370997/360,ft:.3048,m:1,"us-ft":1200/3937};class zo{constructor(t){this.code_=t.code,this.units_=t.units,this.extent_=t.extent!==void 0?t.extent:null,this.worldExtent_=t.worldExtent!==void 0?t.worldExtent:null,this.axisOrientation_=t.axisOrientation!==void 0?t.axisOrientation:"enu",this.global_=t.global!==void 0?t.global:!1,this.canWrapX_=!!(this.global_&&this.extent_),this.getPointResolutionFunc_=t.getPointResolution,this.defaultTileGrid_=null,this.metersPerUnit_=t.metersPerUnit}canWrapX(){return this.canWrapX_}getCode(){return this.code_}getExtent(){return this.extent_}getUnits(){return this.units_}getMetersPerUnit(){return this.metersPerUnit_||js[this.units_]}getWorldExtent(){return this.worldExtent_}getAxisOrientation(){return this.axisOrientation_}isGlobal(){return this.global_}setGlobal(t){this.global_=t,this.canWrapX_=!!(t&&this.extent_)}getDefaultTileGrid(){return this.defaultTileGrid_}setDefaultTileGrid(t){this.defaultTileGrid_=t}setExtent(t){this.extent_=t,this.canWrapX_=!!(this.global_&&t)}setWorldExtent(t){this.worldExtent_=t}setGetPointResolution(t){this.getPointResolutionFunc_=t}getPointResolutionFunc(){return this.getPointResolutionFunc_}}const rn=6378137,oi=Math.PI*rn,_l=[-oi,-oi,oi,oi],ml=[-180,-85,180,85],pn=rn*Math.log(Math.tan(Math.PI/2));class je extends zo{constructor(t){super({code:t,units:"m",extent:_l,global:!0,worldExtent:ml,getPointResolution:function(e,i){return e/Math.cosh(i[1]/rn)}})}}const Gr=[new je("EPSG:3857"),new je("EPSG:102100"),new je("EPSG:102113"),new je("EPSG:900913"),new je("http://www.opengis.net/def/crs/EPSG/0/3857"),new je("http://www.opengis.net/gml/srs/epsg.xml#3857")];function pl(n,t,e,i){const s=n.length;e=e>1?e:2,i=i??e,t===void 0&&(e>2?t=n.slice():t=new Array(s));for(let r=0;rpn?o=pn:o<-pn&&(o=-pn),t[r+1]=o}return t}function yl(n,t,e,i){const s=n.length;e=e>1?e:2,i=i??e,t===void 0&&(e>2?t=n.slice():t=new Array(s));for(let r=0;rs&&(l=l|ht.RIGHT),ar&&(l=l|ht.ABOVE),l===ht.UNKNOWN&&(l=ht.INTERSECTING),l}function Ft(){return[1/0,1/0,-1/0,-1/0]}function Se(n,t,e,i,s){return s?(s[0]=n,s[1]=t,s[2]=e,s[3]=i,s):[n,t,e,i]}function Bn(n){return Se(1/0,1/0,-1/0,-1/0,n)}function Yo(n,t){const e=n[0],i=n[1];return Se(e,i,e,i,t)}function $s(n,t,e,i,s){const r=Bn(s);return Zo(r,n,t,e,i)}function Yi(n,t){return n[0]==t[0]&&n[2]==t[2]&&n[1]==t[1]&&n[3]==t[3]}function Tl(n,t){return t[0]n[2]&&(n[2]=t[2]),t[1]n[3]&&(n[3]=t[3]),n}function zi(n,t){t[0]n[2]&&(n[2]=t[0]),t[1]n[3]&&(n[3]=t[1])}function Zo(n,t,e,i,s){for(;et[0]?i[0]=n[0]:i[0]=t[0],n[1]>t[1]?i[1]=n[1]:i[1]=t[1],n[2]=t[0]&&n[1]<=t[3]&&n[3]>=t[1]}function Hn(n){return n[2]=o&&_<=l),!i&&r&ht.RIGHT&&!(s&ht.RIGHT)&&(m=f-(d-l)*g,i=m>=a&&m<=c),!i&&r&ht.BELOW&&!(s&ht.BELOW)&&(_=d-(f-a)/g,i=_>=o&&_<=l),!i&&r&ht.LEFT&&!(s&ht.LEFT)&&(m=f-(d-o)*g,i=m>=a&&m<=c)}return i}function Bo(n,t){const e=t.getExtent(),i=Xe(n);if(t.canWrapX()&&(i[0]=e[2])){const s=q(e),o=Math.floor((i[0]-e[0])/s)*s;n[0]-=o,n[2]-=o}return n}function Js(n,t,e){if(t.canWrapX()){const i=t.getExtent();if(!isFinite(n[0])||!isFinite(n[2]))return[[i[0],n[1],i[2],n[3]]];Bo(n,t);const s=q(i);if(q(n)>s&&!e)return[[i[0],n[1],i[2],n[3]]];if(n[0]i[2])return[[n[0],n[1],i[2],n[3]],[i[0],n[1],n[2]-s,n[3]]]}return[n]}function Ml(n,t){return n[0]+=+t[0],n[1]+=+t[1],n}function Ln(n,t){let e=!0;for(let i=n.length-1;i>=0;--i)if(n[i]!=t[i]){e=!1;break}return e}function Qs(n,t){const e=Math.cos(t),i=Math.sin(t),s=n[0]*e-n[1]*i,r=n[1]*e+n[0]*i;return n[0]=s,n[1]=r,n}function bl(n,t){return n[0]*=t,n[1]*=t,n}function Vo(n,t){if(t.canWrapX()){const e=q(t.getExtent()),i=Dl(n,t,e);i&&(n[0]-=i*e)}return n}function Dl(n,t,e){const i=t.getExtent();let s=0;return t.canWrapX()&&(n[0]i[2])&&(e=e||q(i),s=Math.floor((n[0]-i[0])/e)),s}const Pl=63710088e-1;function Yr(n,t,e){e=e||Pl;const i=In(n[1]),s=In(t[1]),r=(s-i)/2,o=In(t[0]-n[0])/2,a=Math.sin(r)*Math.sin(r)+Math.sin(o)*Math.sin(o)*Math.cos(i)*Math.cos(s);return 2*e*Math.atan2(Math.sqrt(a),Math.sqrt(1-a))}function Uo(...n){console.warn(...n)}let Os=!0;function jo(n){Os=!1}function tr(n,t){if(t!==void 0){for(let e=0,i=n.length;e=-180&&n[0]<=180&&n[1]>=-90&&n[1]<=90&&(Os=!1,Uo("Call useGeographic() from ol/proj once to work with [longitude, latitude] coordinates.")),n}function $o(n,t){return n}function Te(n,t){return n}function Nl(){Kr(Gr),Kr(Xr),kl(Xr,Gr,pl,yl)}Nl();function Br(n,t,e){return function(i,s,r,o,a){if(!i)return;if(!s&&!t)return i;const l=t?0:r[0]*s,c=t?0:r[1]*s,h=a?a[0]:0,u=a?a[1]:0;let d=n[0]+l/2+h,f=n[2]-l/2+h,g=n[1]+c/2+u,_=n[3]-c/2+u;d>f&&(d=(f+d)/2,f=d),g>_&&(g=(_+g)/2,_=g);let m=st(i[0],d,f),p=st(i[1],g,_);if(o&&e&&s){const y=30*s;m+=-y*Math.log(1+Math.max(0,d-i[0])/y)+y*Math.log(1+Math.max(0,i[0]-f)/y),p+=-y*Math.log(1+Math.max(0,g-i[1])/y)+y*Math.log(1+Math.max(0,i[1]-_)/y)}return[m,p]}}function Gl(n){return n}function nr(n,t,e,i){const s=q(t)/e[0],r=pt(t)/e[1];return i?Math.min(n,Math.max(s,r)):Math.min(n,Math.min(s,r))}function sr(n,t,e){let i=Math.min(n,t);const s=50;return i*=Math.log(1+s*Math.max(0,n/t-1))/s+1,e&&(i=Math.max(i,e),i/=Math.log(1+s*Math.max(0,e/n-1))/s+1),st(i,e/2,t*2)}function zl(n,t,e,i){return t=t!==void 0?t:!0,function(s,r,o,a){if(s!==void 0){const l=n[0],c=n[n.length-1],h=e?nr(l,e,o,i):l;if(a)return t?sr(s,h,c):st(s,c,h);const u=Math.min(h,s),d=Math.floor(Bs(n,u,r));return n[d]>h&&dMath.round(e*jr[i])/jr[i]).join(", ")+")"}function ve(n,t,e,i,s,r,o){r=r||[],o=o||2;let a=0;for(let l=t;l{if(!i)return this.getSimplifiedGeometry(e);const s=this.clone();return s.applyTransform(i),s.getSimplifiedGeometry(e)})}simplifyTransformed(t,e){return this.simplifyTransformedInternal(this.getRevision(),t,e)}clone(){return U()}closestPointXY(t,e,i,s){return U()}containsXY(t,e){const i=this.getClosestPoint([t,e]);return i[0]===t&&i[1]===e}getClosestPoint(t,e){return e=e||[NaN,NaN],this.closestPointXY(t[0],t[1],e,1/0),e}intersectsCoordinate(t){return this.containsXY(t[0],t[1])}computeExtent(t){return U()}getExtent(t){if(this.extentRevision_!=this.getRevision()){const e=this.computeExtent(this.extent_);(isNaN(e[0])||isNaN(e[1]))&&Bn(e),this.extentRevision_=this.getRevision()}return Ll(this.extent_,t)}rotate(t,e){U()}scale(t,e,i){U()}simplify(t){return this.getSimplifiedGeometry(t*t)}getSimplifiedGeometry(t){return U()}getType(){return U()}applyTransform(t){U()}intersectsExtent(t){return U()}translate(t,e){U()}transform(t,e){const i=kt(t),s=i.getUnits()=="tile-pixels"?function(r,o,a){const l=i.getExtent(),c=i.getWorldExtent(),h=pt(c)/pt(l);return de(Hr,c[0],c[3],h,-h,0,0,0),ve(r,0,r.length,a,Hr,o),An(i,e)(r,o,a)}:An(i,e);return this.applyTransform(s),this}}class qn extends ql{constructor(){super(),this.layout="XY",this.stride=2,this.flatCoordinates}computeExtent(t){return $s(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t)}getCoordinates(){return U()}getFirstCoordinate(){return this.flatCoordinates.slice(0,this.stride)}getFlatCoordinates(){return this.flatCoordinates}getLastCoordinate(){return this.flatCoordinates.slice(this.flatCoordinates.length-this.stride)}getLayout(){return this.layout}getSimplifiedGeometry(t){if(this.simplifiedGeometryRevision!==this.getRevision()&&(this.simplifiedGeometryMaxMinSquaredTolerance=0,this.simplifiedGeometryRevision=this.getRevision()),t<0||this.simplifiedGeometryMaxMinSquaredTolerance!==0&&t<=this.simplifiedGeometryMaxMinSquaredTolerance)return this;const e=this.getSimplifiedGeometryInternal(t);return e.getFlatCoordinates().length1)u=e;else if(d>0){for(let f=0;fs&&(s=c),r=a,o=l}return s}function Ql(n,t,e,i,s){for(let r=0,o=e.length;r0;){const u=c.pop(),d=c.pop();let f=0;const g=n[d],_=n[d+1],m=n[u],p=n[u+1];for(let y=d+i;yf&&(h=y,f=w)}f>s&&(l[(h-t)/i]=1,d+i0&&_>f)&&(g<0&&m0&&m>g)){c=u,h=d;continue}r[o++]=c,r[o++]=h,a=c,l=h,c=u,h=d}return r[o++]=c,r[o++]=h,o}function ea(n,t,e,i,s,r,o,a){for(let l=0,c=e.length;lr&&(c-a)*(r-l)-(s-a)*(h-l)>0&&o++:h<=r&&(c-a)*(r-l)-(s-a)*(h-l)<0&&o--,a=c,l=h}return o!==0}function na(n,t,e,i,s,r){if(e.length===0||!Ne(n,t,e[0],i,s,r))return!1;for(let o=1,a=e.length;op&&(c=(h+u)/2,na(n,t,e,i,c,g)&&(m=c,p=y)),h=u}return isNaN(m)&&(m=s[r]),o?(o.push(m,g,p),o):[m,g,p]}function ah(n,t,e,i,s){let r=[];for(let o=0,a=e.length;o=s[0]&&r[2]<=s[2]||r[1]>=s[1]&&r[3]<=s[3]?!0:sa(n,t,e,i,function(o,a){return Al(s,o,a)}):!1}function ra(n,t,e,i,s){return!!(cr(n,t,e,i,s)||Ne(n,t,e,i,s[0],s[1])||Ne(n,t,e,i,s[0],s[3])||Ne(n,t,e,i,s[2],s[1])||Ne(n,t,e,i,s[2],s[3]))}function lh(n,t,e,i,s){if(!ra(n,t,e[0],i,s))return!1;if(e.length===1)return!0;for(let r=1,o=e.length;r0}function ch(n,t,e,i,s){s=s!==void 0?s:!1;for(let r=0,o=e.length;r1&&typeof arguments[e-1]=="function"&&(i=arguments[e-1],--e);let s=0;for(;s0}getInteracting(){return this.hints_[mt.INTERACTING]>0}cancelAnimations(){this.setHint(mt.ANIMATING,-this.hints_[mt.ANIMATING]);let t;for(let e=0,i=this.animations_.length;e=0;--i){const s=this.animations_[i];let r=!0;for(let o=0,a=s.length;o0?c/l.duration:1;h>=1?(l.complete=!0,h=1):r=!1;const u=l.easing(h);if(l.sourceCenter){const d=l.sourceCenter[0],f=l.sourceCenter[1],g=l.targetCenter[0],_=l.targetCenter[1];this.nextCenter_=l.targetCenter;const m=d+u*(g-d),p=f+u*(_-f);this.targetCenter_=[m,p]}if(l.sourceResolution&&l.targetResolution){const d=u===1?l.targetResolution:l.sourceResolution+u*(l.targetResolution-l.sourceResolution);if(l.anchor){const f=this.getViewportSize_(this.getRotation()),g=this.constraints_.resolution(d,0,f,!0);this.targetCenter_=this.calculateCenterZoom(g,l.anchor)}this.nextResolution_=l.targetResolution,this.targetResolution_=d,this.applyTargetState_(!0)}if(l.sourceRotation!==void 0&&l.targetRotation!==void 0){const d=u===1?ci(l.targetRotation+Math.PI,2*Math.PI)-Math.PI:l.sourceRotation+u*(l.targetRotation-l.sourceRotation);if(l.anchor){const f=this.constraints_.rotation(d,!0);this.targetCenter_=this.calculateCenterRotate(f,l.anchor)}this.nextRotation_=l.targetRotation,this.targetRotation_=d}if(this.applyTargetState_(!0),e=!0,!l.complete)break}if(r){this.animations_[i]=null,this.setHint(mt.ANIMATING,-1),this.nextCenter_=null,this.nextResolution_=NaN,this.nextRotation_=NaN;const o=s[0].callback;o&&yn(o,!0)}}this.animations_=this.animations_.filter(Boolean),e&&this.updateAnimationKey_===void 0&&(this.updateAnimationKey_=requestAnimationFrame(this.updateAnimations_.bind(this)))}calculateCenterRotate(t,e){let i;const s=this.getCenterInternal();return s!==void 0&&(i=[s[0]-e[0],s[1]-e[1]],Qs(i,t-this.getRotation()),Ml(i,e)),i}calculateCenterZoom(t,e){let i;const s=this.getCenterInternal(),r=this.getResolution();if(s!==void 0&&r!==void 0){const o=e[0]-t*(e[0]-s[0])/r,a=e[1]-t*(e[1]-s[1])/r;i=[o,a]}return i}getViewportSize_(t){const e=this.viewportSize_;if(t){const i=e[0],s=e[1];return[Math.abs(i*Math.cos(t))+Math.abs(s*Math.sin(t)),Math.abs(i*Math.sin(t))+Math.abs(s*Math.cos(t))]}return e}setViewportSize(t){this.viewportSize_=Array.isArray(t)?t.slice():[100,100],this.getAnimating()||this.resolveConstraints(0)}getCenter(){const t=this.getCenterInternal();return t&&Fs(t,this.getProjection())}getCenterInternal(){return this.get(Nt.CENTER)}getConstraints(){return this.constraints_}getConstrainResolution(){return this.get("constrainResolution")}getHints(t){return t!==void 0?(t[0]=this.hints_[0],t[1]=this.hints_[1],t):this.hints_.slice()}calculateExtent(t){const e=this.calculateExtentInternal(t);return $o(e,this.getProjection())}calculateExtentInternal(t){t=t||this.getViewportSizeMinusPadding_();const e=this.getCenterInternal();j(e,"The view center is not defined");const i=this.getResolution();j(i!==void 0,"The view resolution is not defined");const s=this.getRotation();return j(s!==void 0,"The view rotation is not defined"),Ps(e,i,s,t)}getMaxResolution(){return this.maxResolution_}getMinResolution(){return this.minResolution_}getMaxZoom(){return this.getZoomForResolution(this.minResolution_)}setMaxZoom(t){this.applyOptions_(this.getUpdatedOptions_({maxZoom:t}))}getMinZoom(){return this.getZoomForResolution(this.maxResolution_)}setMinZoom(t){this.applyOptions_(this.getUpdatedOptions_({minZoom:t}))}setConstrainResolution(t){this.applyOptions_(this.getUpdatedOptions_({constrainResolution:t}))}getProjection(){return this.projection_}getResolution(){return this.get(Nt.RESOLUTION)}getResolutions(){return this.resolutions_}getResolutionForExtent(t,e){return this.getResolutionForExtentInternal(Te(t,this.getProjection()),e)}getResolutionForExtentInternal(t,e){e=e||this.getViewportSizeMinusPadding_();const i=q(t)/e[0],s=pt(t)/e[1];return Math.max(i,s)}getResolutionForValueFunction(t){t=t||2;const e=this.getConstrainedResolution(this.maxResolution_),i=this.minResolution_,s=Math.log(e/i)/Math.log(t);return function(r){return e/Math.pow(t,r*s)}}getRotation(){return this.get(Nt.ROTATION)}getValueForResolutionFunction(t){const e=Math.log(t||2),i=this.getConstrainedResolution(this.maxResolution_),s=this.minResolution_,r=Math.log(i/s)/e;return function(o){return Math.log(i/o)/e/r}}getViewportSizeMinusPadding_(t){let e=this.getViewportSize_(t);const i=this.padding_;return i&&(e=[e[0]-i[1]-i[3],e[1]-i[0]-i[2]]),e}getState(){const t=this.getProjection(),e=this.getResolution(),i=this.getRotation();let s=this.getCenterInternal();const r=this.padding_;if(r){const o=this.getViewportSizeMinusPadding_();s=gs(s,this.getViewportSize_(),[o[0]/2+r[3],o[1]/2+r[0]],e,i)}return{center:s.slice(0),projection:t!==void 0?t:null,resolution:e,nextCenter:this.nextCenter_,nextResolution:this.nextResolution_,nextRotation:this.nextRotation_,rotation:i,zoom:this.getZoom()}}getViewStateAndExtent(){return{viewState:this.getState(),extent:this.calculateExtent()}}getZoom(){let t;const e=this.getResolution();return e!==void 0&&(t=this.getZoomForResolution(e)),t}getZoomForResolution(t){let e=this.minZoom_||0,i,s;if(this.resolutions_){const r=Bs(this.resolutions_,t,1);e=r,i=this.resolutions_[r],r==this.resolutions_.length-1?s=2:s=i/this.resolutions_[r+1]}else i=this.maxResolution_,s=this.zoomFactor_;return e+Math.log(i/t)/Math.log(s)}getResolutionForZoom(t){if(this.resolutions_?.length){if(this.resolutions_.length===1)return this.resolutions_[0];const e=st(Math.floor(t),0,this.resolutions_.length-2),i=this.resolutions_[e]/this.resolutions_[e+1];return this.resolutions_[e]/Math.pow(i,st(t-e,0,1))}return this.maxResolution_/Math.pow(this.zoomFactor_,t-this.minZoom_)}fit(t,e){let i;if(j(Array.isArray(t)||typeof t.getSimplifiedGeometry=="function","Invalid extent or geometry provided as `geometry`"),Array.isArray(t)){j(!Hn(t),"Cannot fit empty extent provided as `geometry`");const s=Te(t,this.getProjection());i=to(s)}else if(t.getType()==="Circle"){const s=Te(t.getExtent(),this.getProjection());i=to(s),i.rotate(this.getRotation(),Xe(s))}else i=t;this.fitInternal(i,e)}rotatedExtentForGeometry(t){const e=this.getRotation(),i=Math.cos(e),s=Math.sin(-e),r=t.getFlatCoordinates(),o=t.getStride();let a=1/0,l=1/0,c=-1/0,h=-1/0;for(let u=0,d=r.length;u{this.dispatchEvent("sourceready")},0))),this.changed()}getFeatures(t){return this.renderer_?this.renderer_.getFeatures(t):Promise.resolve([])}getData(t){return!this.renderer_||!this.rendered?null:this.renderer_.getData(t)}isVisible(t){let e;const i=this.getMapInternal();!t&&i&&(t=i.getView()),t instanceof Vt?e={viewState:t.getState(),extent:t.calculateExtent()}:e=t,!e.layerStatesArray&&i&&(e.layerStatesArray=i.getLayerGroup().getLayerStatesArray());let s;e.layerStatesArray?s=e.layerStatesArray.find(o=>o.layer===this):s=this.getLayerState();const r=this.getExtent();return dr(s,e.viewState)&&(!r||Tt(r,e.extent))}getAttributions(t){if(!this.isVisible(t))return[];const e=this.getSource()?.getAttributions();if(!e)return[];const i=t instanceof Vt?t.getViewStateAndExtent():t;let s=e(i);return Array.isArray(s)||(s=[s]),s}render(t,e){const i=this.getRenderer();return i.prepareFrame(t)?(this.rendered=!0,i.renderFrame(t,e)):null}unrender(){this.rendered=!1}getDeclutter(){}renderDeclutter(t,e){}renderDeferred(t){const e=this.getRenderer();e&&e.renderDeferred(t)}setMapInternal(t){t||this.unrender(),this.set(J.MAP,t)}getMapInternal(){return this.get(J.MAP)}setMap(t){this.mapPrecomposeKey_&&(tt(this.mapPrecomposeKey_),this.mapPrecomposeKey_=null),t||this.changed(),this.mapRenderKey_&&(tt(this.mapRenderKey_),this.mapRenderKey_=null),t&&(this.mapPrecomposeKey_=V(t,Ot.PRECOMPOSE,this.handlePrecompose_,this),this.mapRenderKey_=V(this,z.CHANGE,t.render,t),this.changed())}handlePrecompose_(t){const e=t.frameState.layerStatesArray,i=this.getLayerState(!1);j(!e.some(s=>s.layer===i.layer),"A layer can only be added to the map once. Use either `layer.setMap()` or `map.addLayer()`, not both."),e.push(i)}setSource(t){this.set(J.SOURCE,t)}getRenderer(){return this.renderer_||(this.renderer_=this.createRenderer()),this.renderer_}hasRenderer(){return!!this.renderer_}createRenderer(){return null}disposeInternal(){this.renderer_&&(this.renderer_.dispose(),delete this.renderer_),this.setSource(null),super.disposeInternal()}}function dr(n,t){if(!n.visible)return!1;const e=t.resolution;if(e=n.maxResolution)return!1;const i=t.zoom;return i>n.minZoom&&i<=n.maxZoom}function oa(n,t,e=0,i=n.length-1,s=mh){for(;i>e;){if(i-e>600){const l=i-e+1,c=t-e+1,h=Math.log(l),u=.5*Math.exp(2*h/3),d=.5*Math.sqrt(h*u*(l-u)/l)*(c-l/2<0?-1:1),f=Math.max(e,Math.floor(t-c*u/l+d)),g=Math.min(i,Math.floor(t+(l-c)*u/l+d));oa(n,t,f,g,s)}const r=n[t];let o=e,a=i;for(Ai(n,e,t),s(n[i],r)>0&&Ai(n,e,i);o0;)a--}s(n[e],r)===0?Ai(n,e,a):(a++,Ai(n,a,i)),a<=t&&(e=a+1),t<=a&&(i=a-1)}}function Ai(n,t,e){const i=n[t];n[t]=n[e],n[e]=i}function mh(n,t){return nt?1:0}let aa=class{constructor(t=9){this._maxEntries=Math.max(4,t),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()}all(){return this._all(this.data,[])}search(t){let e=this.data;const i=[];if(!xn(t,e))return i;const s=this.toBBox,r=[];for(;e;){for(let o=0;o=0&&r[e].children.length>this._maxEntries;)this._split(r,e),e--;this._adjustParentBBoxes(s,r,e)}_split(t,e){const i=t[e],s=i.children.length,r=this._minEntries;this._chooseSplitAxis(i,r,s);const o=this._chooseSplitIndex(i,r,s),a=ii(i.children.splice(o,i.children.length-o));a.height=i.height,a.leaf=i.leaf,He(i,this.toBBox),He(a,this.toBBox),e?t[e-1].children.push(a):this._splitRoot(i,a)}_splitRoot(t,e){this.data=ii([t,e]),this.data.height=t.height+1,this.data.leaf=!1,He(this.data,this.toBBox)}_chooseSplitIndex(t,e,i){let s,r=1/0,o=1/0;for(let a=e;a<=i-e;a++){const l=Pi(t,0,a,this.toBBox),c=Pi(t,a,i,this.toBBox),h=wh(l,c),u=_s(l)+_s(c);h=e;c--){const h=t.children[c];Oi(a,t.leaf?r(h):h),l+=En(a)}return l}_adjustParentBBoxes(t,e,i){for(let s=i;s>=0;s--)Oi(e[s],t)}_condense(t){for(let e=t.length-1,i;e>=0;e--)t[e].children.length===0?e>0?(i=t[e-1].children,i.splice(i.indexOf(t[e]),1)):this.clear():He(t[e],this.toBBox)}};function ph(n,t,e){if(!e)return t.indexOf(n);for(let i=0;i=n.minX&&t.maxY>=n.minY}function ii(n){return{children:n,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function eo(n,t,e,i,s){const r=[t,e];for(;r.length;){if(e=r.pop(),t=r.pop(),e-t<=i)continue;const o=t+Math.ceil((e-t)/i/2)*i;oa(n,o,t,e,s),r.push(t,o,o,e)}}const Y={IDLE:0,LOADING:1,LOADED:2,ERROR:3,EMPTY:4};function io(n){return n[0]>0&&n[1]>0}function Ch(n,t,e){return e===void 0&&(e=[0,0]),e[0]=n[0]*t+.5|0,e[1]=n[1]*t+.5|0,e}function vt(n,t){return Array.isArray(n)?n:(t===void 0?t=[n,n]:(t[0]=n,t[1]=n),t)}class Qn{constructor(t){this.opacity_=t.opacity,this.rotateWithView_=t.rotateWithView,this.rotation_=t.rotation,this.scale_=t.scale,this.scaleArray_=vt(t.scale),this.displacement_=t.displacement,this.declutterMode_=t.declutterMode}clone(){const t=this.getScale();return new Qn({opacity:this.getOpacity(),scale:Array.isArray(t)?t.slice():t,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()})}getOpacity(){return this.opacity_}getRotateWithView(){return this.rotateWithView_}getRotation(){return this.rotation_}getScale(){return this.scale_}getScaleArray(){return this.scaleArray_}getDisplacement(){return this.displacement_}getDeclutterMode(){return this.declutterMode_}getAnchor(){return U()}getImage(t){return U()}getHitDetectionImage(){return U()}getPixelRatio(t){return 1}getImageState(){return U()}getImageSize(){return U()}getOrigin(){return U()}getSize(){return U()}setDisplacement(t){this.displacement_=t}setOpacity(t){this.opacity_=t}setRotateWithView(t){this.rotateWithView_=t}setRotation(t){this.rotation_=t}setScale(t){this.scale_=t,this.scaleArray_=vt(t)}listenImageChange(t){U()}load(){U()}unlistenImageChange(t){U()}ready(){return Promise.resolve()}}const Ui={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]};var ft={name:"xyz",min:[0,0,0],channel:["X","Y","Z"],alias:["XYZ","ciexyz","cie1931"]};ft.whitepoint={2:{A:[109.85,100,35.585],C:[98.074,100,118.232],D50:[96.422,100,82.521],D55:[95.682,100,92.149],D65:[95.045592705167,100,108.9057750759878],D75:[94.972,100,122.638],F2:[99.187,100,67.395],F7:[95.044,100,108.755],F11:[100.966,100,64.37],E:[100,100,100]},10:{A:[111.144,100,35.2],C:[97.285,100,116.145],D50:[96.72,100,81.427],D55:[95.799,100,90.926],D65:[94.811,100,107.304],D75:[94.416,100,120.641],F2:[103.28,100,69.026],F7:[95.792,100,107.687],F11:[103.866,100,65.627],E:[100,100,100]}};ft.max=ft.whitepoint[2].D65;ft.rgb=function(n,t){t=t||ft.whitepoint[2].E;var e=n[0]/t[0],i=n[1]/t[1],s=n[2]/t[2],r,o,a;return r=e*3.240969941904521+i*-1.537383177570093+s*-.498610760293,o=e*-.96924363628087+i*1.87596750150772+s*.041555057407175,a=e*.055630079696993+i*-.20397695888897+s*1.056971514242878,r=r>.0031308?1.055*Math.pow(r,1/2.4)-.055:r=r*12.92,o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o=o*12.92,a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a=a*12.92,r=Math.min(Math.max(0,r),1),o=Math.min(Math.max(0,o),1),a=Math.min(Math.max(0,a),1),[r*255,o*255,a*255]};Ui.xyz=function(n,t){var e=n[0]/255,i=n[1]/255,s=n[2]/255;e=e>.04045?Math.pow((e+.055)/1.055,2.4):e/12.92,i=i>.04045?Math.pow((i+.055)/1.055,2.4):i/12.92,s=s>.04045?Math.pow((s+.055)/1.055,2.4):s/12.92;var r=e*.41239079926595+i*.35758433938387+s*.18048078840183,o=e*.21263900587151+i*.71516867876775+s*.072192315360733,a=e*.019330818715591+i*.11919477979462+s*.95053215224966;return t=t||ft.whitepoint[2].E,[r*t[0],o*t[1],a*t[2]]};const fr={name:"luv",min:[0,-134,-140],max:[100,224,122],channel:["lightness","u","v"],alias:["LUV","cieluv","cie1976"],xyz:function(n,t,e){var i,s,r,o,a,l,c,h,u,d,f,g,_;if(r=n[0],o=n[1],a=n[2],r===0)return[0,0,0];var m=.0011070564598794539;return t=t||"D65",e=e||2,u=ft.whitepoint[e][t][0],d=ft.whitepoint[e][t][1],f=ft.whitepoint[e][t][2],g=4*u/(u+15*d+3*f),_=9*d/(u+15*d+3*f),i=o/(13*r)+g||0,s=a/(13*r)+_||0,c=r>8?d*Math.pow((r+16)/116,3):d*r*m,l=c*9*i/(4*s)||0,h=c*(12-3*i-20*s)/(4*s)||0,[l,c,h]}};ft.luv=function(n,t,e){var i,s,r,o,a,l,c,h,u,d,f,g,_,m=.008856451679035631,p=903.2962962962961;t=t||"D65",e=e||2,u=ft.whitepoint[e][t][0],d=ft.whitepoint[e][t][1],f=ft.whitepoint[e][t][2],g=4*u/(u+15*d+3*f),_=9*d/(u+15*d+3*f),l=n[0],c=n[1],h=n[2],i=4*l/(l+15*c+3*h)||0,s=9*c/(l+15*c+3*h)||0;var y=c/d;return r=y<=m?p*y:116*Math.pow(y,1/3)-16,o=13*r*(i-g),a=13*r*(s-_),[r,o,a]};var la={name:"lchuv",channel:["lightness","chroma","hue"],alias:["LCHuv","cielchuv"],min:[0,0,0],max:[100,100,360],luv:function(n){var t=n[0],e=n[1],i=n[2],s,r,o;return o=i/360*2*Math.PI,s=e*Math.cos(o),r=e*Math.sin(o),[t,s,r]},xyz:function(n){return fr.xyz(la.luv(n))}};fr.lchuv=function(n){var t=n[0],e=n[1],i=n[2],s=Math.sqrt(e*e+i*i),r=Math.atan2(i,e),o=r*360/2/Math.PI;return o<0&&(o+=360),[t,s,o]};ft.lchuv=function(n){return fr.lchuv(ft.luv(n))};const no={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};var so={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function Rh(n){var t,e=[],i=1,s;if(typeof n=="number")return{space:"rgb",values:[n>>>16,(n&65280)>>>8,n&255],alpha:1};if(typeof n=="number")return{space:"rgb",values:[n>>>16,(n&65280)>>>8,n&255],alpha:1};if(n=String(n).toLowerCase(),no[n])e=no[n].slice(),s="rgb";else if(n==="transparent")i=0,s="rgb",e=[0,0,0];else if(n[0]==="#"){var r=n.slice(1),o=r.length,a=o<=4;i=1,a?(e=[parseInt(r[0]+r[0],16),parseInt(r[1]+r[1],16),parseInt(r[2]+r[2],16)],o===4&&(i=parseInt(r[3]+r[3],16)/255)):(e=[parseInt(r[0]+r[1],16),parseInt(r[2]+r[3],16),parseInt(r[4]+r[5],16)],o===8&&(i=parseInt(r[6]+r[7],16)/255)),e[0]||(e[0]=0),e[1]||(e[1]=0),e[2]||(e[2]=0),s="rgb"}else if(t=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(n)){var l=t[1];s=l.replace(/a$/,"");var c=s==="cmyk"?4:s==="gray"?1:3;e=t[2].trim().split(/\s*[,\/]\s*|\s+/),s==="color"&&(s=e.shift()),e=e.map(function(h,u){if(h[h.length-1]==="%")return h=parseFloat(h)/100,u===3?h:s==="rgb"?h*255:s[0]==="h"||s[0]==="l"&&!u?h*100:s==="lab"?h*125:s==="lch"?u<2?h*150:h*360:s[0]==="o"&&!u?h:s==="oklab"?h*.4:s==="oklch"?u<2?h*.4:h*360:h;if(s[u]==="h"||u===2&&s[s.length-1]==="h"){if(so[h]!==void 0)return so[h];if(h.endsWith("deg"))return parseFloat(h);if(h.endsWith("turn"))return parseFloat(h)*360;if(h.endsWith("grad"))return parseFloat(h)*360/400;if(h.endsWith("rad"))return parseFloat(h)*180/Math.PI}return h==="none"?0:parseFloat(h)}),i=e.length>c?e.pop():1}else/[0-9](?:\s|\/|,)/.test(n)&&(e=n.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),s=n.match(/([a-z])/ig)?.join("")?.toLowerCase()||"rgb");return{space:s,values:e,alpha:i}}const ps={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(n){var t=n[0]/360,e=n[1]/100,i=n[2]/100,s,r,o,a,l,c=0;if(e===0)return l=i*255,[l,l,l];for(r=i<.5?i*(1+e):i+e-i*e,s=2*i-r,a=[0,0,0];c<3;)o=t+1/3*-(c-1),o<0?o++:o>1&&o--,l=6*o<1?s+(r-s)*6*o:2*o<1?r:3*o<2?s+(r-s)*(2/3-o)*6:s,a[c++]=l*255;return a}};Ui.hsl=function(n){var t=n[0]/255,e=n[1]/255,i=n[2]/255,s=Math.min(t,e,i),r=Math.max(t,e,i),o=r-s,a,l,c;return r===s?a=0:t===r?a=(e-i)/o:e===r?a=2+(i-t)/o:i===r&&(a=4+(t-e)/o),a=Math.min(a*60,360),a<0&&(a+=360),c=(s+r)/2,r===s?l=0:c<=.5?l=o/(r+s):l=o/(2-r-s),[a,l*100,c*100]};function Th(n){Array.isArray(n)&&n.raw&&(n=String.raw(...arguments)),n instanceof Number&&(n=+n);var t,e=Rh(n);if(!e.space)return[];const i=e.space[0]==="h"?ps.min:Ui.min,s=e.space[0]==="h"?ps.max:Ui.max;return t=Array(3),t[0]=Math.min(Math.max(e.values[0],i[0]),s[0]),t[1]=Math.min(Math.max(e.values[1],i[1]),s[1]),t[2]=Math.min(Math.max(e.values[2],i[2]),s[2]),e.space[0]==="h"&&(t=ps.rgb(t)),t.push(Math.min(Math.max(e.alpha,0),1)),t}const gr=[NaN,NaN,NaN,0];function Ih(n){return typeof n=="string"?n:mr(n)}const vh=1024,Mi={};let ys=0;function Sh(n){if(n.length===4)return n;const t=n.slice();return t[3]=1,t}function ro(n){const t=ft.lchuv(Ui.xyz(n));return t[3]=n[3],t}function Lh(n){const t=ft.rgb(la.xyz(n));return t[3]=n[3],t}function _r(n){if(n==="none")return gr;if(Mi.hasOwnProperty(n))return Mi[n];if(ys>=vh){let e=0;for(const i in Mi)e++&3||(delete Mi[i],--ys)}const t=Th(n);if(t.length!==4)throw new Error('failed to parse "'+n+'" as color');for(const e of t)if(isNaN(e))throw new Error('failed to parse "'+n+'" as color');return ha(t),Mi[n]=t,++ys,t}function ji(n){return Array.isArray(n)?n:_r(n)}function ha(n){return n[0]=st(n[0]+.5|0,0,255),n[1]=st(n[1]+.5|0,0,255),n[2]=st(n[2]+.5|0,0,255),n[3]=st(n[3],0,1),n}function mr(n){let t=n[0];t!=(t|0)&&(t=t+.5|0);let e=n[1];e!=(e|0)&&(e=e+.5|0);let i=n[2];i!=(i|0)&&(i=i+.5|0);const s=n[3]===void 0?1:Math.round(n[3]*1e3)/1e3;return"rgba("+t+","+e+","+i+","+s+")"}const Le=typeof navigator<"u"&&typeof navigator.userAgent<"u"?navigator.userAgent.toLowerCase():"",Ah=Le.includes("firefox"),Mh=Le.includes("safari")&&!Le.includes("chrom");Mh&&(Le.includes("version/15.4")||/cpu (os|iphone os) 15_4 like mac os x/.test(Le));const bh=Le.includes("webkit")&&!Le.includes("edge"),ca=Le.includes("macintosh"),ua=typeof devicePixelRatio<"u"?devicePixelRatio:1,da=typeof WorkerGlobalScope<"u"&&typeof OffscreenCanvas<"u"&&self instanceof WorkerGlobalScope,fa=typeof Image<"u"&&Image.prototype.decode,ga=function(){let n=!1;try{const t=Object.defineProperty({},"passive",{get:function(){n=!0}});window.addEventListener("_",null,t),window.removeEventListener("_",null,t)}catch{}return n}();function rt(n,t,e,i){let s;return e&&e.length?s=e.shift():da?s=new OffscreenCanvas(n||300,t||300):s=document.createElement("canvas"),n&&(s.width=n),t&&(s.height=t),s.getContext("2d",i)}let Es;function bn(){return Es||(Es=rt(1,1)),Es}function mi(n){const t=n.canvas;t.width=1,t.height=1,n.clearRect(0,0,1,1)}function oo(n,t){const e=t.parentNode;e&&e.replaceChild(n,t)}function Dh(n){for(;n.lastChild;)n.lastChild.remove()}function Ph(n,t){const e=n.childNodes;for(let i=0;;++i){const s=e[i],r=t[i];if(!s&&!r)break;if(s!==r){if(!s){n.appendChild(r);continue}if(!r){n.removeChild(s),--i;continue}n.insertBefore(r,s)}}}function Oh(n,t,e){const i=n;let s=!0,r=!1,o=!1;const a=[vn(i,z.LOAD,function(){o=!0,r||t()})];return i.src&&fa?(r=!0,i.decode().then(function(){s&&t()}).catch(function(l){s&&(o?t():e())})):a.push(vn(i,z.ERROR,e)),function(){s=!1,a.forEach(tt)}}function Fh(n,t){return new Promise((e,i)=>{function s(){o(),e(n)}function r(){o(),i(new Error("Image load error"))}function o(){n.removeEventListener("load",s),n.removeEventListener("error",r)}n.addEventListener("load",s),n.addEventListener("error",r)})}function kh(n,t){return t&&(n.src=t),n.src&&fa?new Promise((e,i)=>n.decode().then(()=>e(n)).catch(s=>n.complete&&n.width?e(n):i(s))):Fh(n)}class Nh{constructor(){this.cache_={},this.patternCache_={},this.cacheSize_=0,this.maxCacheSize_=32}clear(){this.cache_={},this.patternCache_={},this.cacheSize_=0}canExpireCache(){return this.cacheSize_>this.maxCacheSize_}expire(){if(this.canExpireCache()){let t=0;for(const e in this.cache_){const i=this.cache_[e];!(t++&3)&&!i.hasListener()&&(delete this.cache_[e],delete this.patternCache_[e],--this.cacheSize_)}}}get(t,e,i){const s=xs(t,e,i);return s in this.cache_?this.cache_[s]:null}getPattern(t,e,i){const s=xs(t,e,i);return s in this.patternCache_?this.patternCache_[s]:null}set(t,e,i,s,r){const o=xs(t,e,i),a=o in this.cache_;this.cache_[o]=s,r&&(s.getImageState()===Y.IDLE&&s.load(),s.getImageState()===Y.LOADING?s.ready().then(()=>{this.patternCache_[o]=bn().createPattern(s.getImage(1),"repeat")}):this.patternCache_[o]=bn().createPattern(s.getImage(1),"repeat")),a||++this.cacheSize_}setSize(t){this.maxCacheSize_=t,this.expire()}}function xs(n,t,e){const i=e?ji(e):"null";return t+":"+n+":"+i}const Ht=new Nh;let bi=null;class Gh extends Kn{constructor(t,e,i,s,r){super(),this.hitDetectionImage_=null,this.image_=t,this.crossOrigin_=i,this.canvas_={},this.color_=r,this.imageState_=s===void 0?Y.IDLE:s,this.size_=t&&t.width&&t.height?[t.width,t.height]:null,this.src_=e,this.tainted_,this.ready_=null}initializeImage_(){this.image_=new Image,this.crossOrigin_!==null&&(this.image_.crossOrigin=this.crossOrigin_)}isTainted_(){if(this.tainted_===void 0&&this.imageState_===Y.LOADED){bi||(bi=rt(1,1,void 0,{willReadFrequently:!0})),bi.drawImage(this.image_,0,0);try{bi.getImageData(0,0,1,1),this.tainted_=!1}catch{bi=null,this.tainted_=!0}}return this.tainted_===!0}dispatchChangeEvent_(){this.dispatchEvent(z.CHANGE)}handleImageError_(){this.imageState_=Y.ERROR,this.dispatchChangeEvent_()}handleImageLoad_(){this.imageState_=Y.LOADED,this.size_=[this.image_.width,this.image_.height],this.dispatchChangeEvent_()}getImage(t){return this.image_||this.initializeImage_(),this.replaceColor_(t),this.canvas_[t]?this.canvas_[t]:this.image_}getPixelRatio(t){return this.replaceColor_(t),this.canvas_[t]?t:1}getImageState(){return this.imageState_}getHitDetectionImage(){if(this.image_||this.initializeImage_(),!this.hitDetectionImage_)if(this.isTainted_()){const t=this.size_[0],e=this.size_[1],i=rt(t,e);i.fillRect(0,0,t,e),this.hitDetectionImage_=i.canvas}else this.hitDetectionImage_=this.image_;return this.hitDetectionImage_}getSize(){return this.size_}getSrc(){return this.src_}load(){if(this.imageState_===Y.IDLE){this.image_||this.initializeImage_(),this.imageState_=Y.LOADING;try{this.src_!==void 0&&(this.image_.src=this.src_)}catch{this.handleImageError_()}this.image_ instanceof HTMLImageElement&&kh(this.image_,this.src_).then(t=>{this.image_=t,this.handleImageLoad_()}).catch(this.handleImageError_.bind(this))}}replaceColor_(t){if(!this.color_||this.canvas_[t]||this.imageState_!==Y.LOADED)return;const e=this.image_,i=rt(Math.ceil(e.width*t),Math.ceil(e.height*t)),s=i.canvas;i.scale(t,t),i.drawImage(e,0,0),i.globalCompositeOperation="multiply",i.fillStyle=Ih(this.color_),i.fillRect(0,0,s.width/t,s.height/t),i.globalCompositeOperation="destination-in",i.drawImage(e,0,0),this.canvas_[t]=s}ready(){return this.ready_||(this.ready_=new Promise(t=>{if(this.imageState_===Y.LOADED||this.imageState_===Y.ERROR)t();else{const e=()=>{(this.imageState_===Y.LOADED||this.imageState_===Y.ERROR)&&(this.removeEventListener(z.CHANGE,e),t())};this.addEventListener(z.CHANGE,e)}})),this.ready_}}function pr(n,t,e,i,s,r){let o=t===void 0?void 0:Ht.get(t,e,s);return o||(o=new Gh(n,n&&"src"in n?n.src||void 0:t,e,i,s),Ht.set(t,e,s,o,r)),r&&o&&!Ht.getPattern(t,e,s)&&Ht.set(t,e,s,o,r),o}function qt(n){return n?Array.isArray(n)?mr(n):typeof n=="object"&&"src"in n?zh(n):n:null}function zh(n){if(!n.offset||!n.size)return Ht.getPattern(n.src,"anonymous",n.color);const t=n.src+":"+n.offset,e=Ht.getPattern(t,void 0,n.color);if(e)return e;const i=Ht.get(n.src,"anonymous",null);if(i.getImageState()!==Y.LOADED)return null;const s=rt(n.size[0],n.size[1]);return s.drawImage(i.getImage(1),n.offset[0],n.offset[1],n.size[0],n.size[1],0,0,n.size[0],n.size[1]),pr(s.canvas,t,void 0,Y.LOADED,n.color,!0),Ht.getPattern(t,void 0,n.color)}const wn="ol-hidden",ts="ol-unselectable",yr="ol-control",ao="ol-collapsed",Xh=new RegExp(["^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)","(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)","(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00 ))?)","(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?","(?:small|large)|medium|smaller|larger|[\\.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))","(?:\\s*\\/\\s*(normal|[\\.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])?))",`?\\s*([-,\\"\\'\\sa-z]+?)\\s*$`].join(""),"i"),lo=["style","variant","weight","size","lineHeight","family"],_a=function(n){const t=n.match(Xh);if(!t)return null;const e={lineHeight:"normal",size:"1.2em",style:"normal",weight:"normal",variant:"normal"};for(let i=0,s=lo.length;it.replaceAll(" ",""));for(let t in l)if(!this.store.checkCIDR(l[t])){this.error||this.dashboardStore.newMessage("WGDashboard","Endpoint Allowed IPs format is incorrect","danger"),this.data.endpoint_allowed_ip="",this.error=!0;return}this.error=!1,this.data.endpoint_allowed_ip=this.endpointAllowedIps}},watch:{endpointAllowedIps(){this.checkAllowedIP()}}},J={for:"peer_endpoint_allowed_ips",class:"form-label"},z={class:"text-muted"},H=["disabled"];function Q(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("label",J,[e("small",z,[o(s,{t:"Endpoint Allowed IPs"}),t[2]||(t[2]=w()),e("code",null,[o(s,{t:"(Required)"})])])]),h(e("input",{type:"text",class:_(["form-control form-control-sm rounded-3",{"is-invalid":c.error}]),disabled:this.saving,"onUpdate:modelValue":t[0]||(t[0]=a=>this.endpointAllowedIps=a),onBlur:t[1]||(t[1]=a=>this.checkAllowedIP()),id:"peer_endpoint_allowed_ips"},null,42,H),[[f,this.endpointAllowedIps]])])}const Y=k(W,[["render",Q]]),Z={name:"allowedIPsInput",components:{LocaleText:p},props:{data:Object,saving:Boolean,bulk:Boolean,availableIp:void 0},data(){return{allowedIp:[],availableIpSearchString:"",customAvailableIp:"",allowedIpFormatError:!1}},setup(l){const t=$(),n=I(),r=C("");return Object.keys(l.availableIp).length>0&&(r.value=Object.keys(l.availableIp)[0]),{store:t,dashboardStore:n,selectedSubnet:r}},computed:{searchAvailableIps(){return this.availableIpSearchString?this.availableIp[this.selectedSubnet].filter(l=>l.includes(this.availableIpSearchString)&&!this.data.allowed_ips.includes(l)):this.availableIp[this.selectedSubnet].filter(l=>!this.data.allowed_ips.includes(l))},inputGetLocale(){return T("Enter IP Address/CIDR")}},methods:{addAllowedIp(l){let t=l.split(",");for(let n=0;n0&&this.data.allowed_ips.length===0)for(let l in this.availableIp)this.availableIp[l].length>0&&this.addAllowedIp(this.availableIp[l][0])}},X={class:"d-flex flex-column flex-md-row mb-2"},ee={for:"peer_allowed_ip_textbox",class:"form-label mb-0"},te={class:"text-muted"},se={class:"form-check form-switch ms-md-auto"},ae={class:"form-check-label",for:"disableIPValidation"},le={class:"d-flex"},oe=["onClick"],ie={class:"d-flex gap-2 align-items-center"},de={class:"input-group"},ne=["placeholder","disabled"],re=["disabled"],ce={class:"text-muted"},ue={class:"dropdown flex-grow-1"},pe=["disabled"],he={key:0,class:"dropdown-menu mt-2 shadow w-100 dropdown-menu-end rounded-3 pb-0",style:{width:"300px !important"}},be={class:"px-3 d-flex gap-3 align-items-center"},me={class:"px-3 overflow-x-scroll d-flex overflow-x-scroll overflow-y-hidden align-items-center gap-2"},_e=["onClick"],ve={class:"overflow-y-scroll",style:{height:"270px"}},fe=["onClick"],ke={class:"me-auto"},ye={key:0,class:"px-3 py-2"},ge={key:0,class:"text-muted"},we={key:1,class:"text-muted"};function xe(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",{class:_({inactiveField:this.bulk})},[e("div",X,[e("label",ee,[e("small",te,[o(s,{t:"Allowed IPs"}),t[5]||(t[5]=w()),e("code",null,[o(s,{t:"(Required)"})])])]),e("div",se,[h(e("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":t[0]||(t[0]=a=>this.data.allowed_ips_validation=a),role:"switch",id:"disableIPValidation"},null,512),[[A,this.data.allowed_ips_validation]]),e("label",ae,[e("small",null,[o(s,{t:"Allowed IPs Validation"})])])])]),e("div",le,[e("div",{class:_(["d-flex gap-2 flex-wrap",{"mb-2":this.data.allowed_ips.length>0}])},[o(j,{name:"list"},{default:U(()=>[(i(!0),d(O,null,L(this.data.allowed_ips,(a,u)=>(i(),d("span",{class:"badge rounded-pill text-bg-success",key:a},[w(S(a)+" ",1),e("a",{role:"button",onClick:P=>this.data.allowed_ips.splice(u,1)},t[6]||(t[6]=[e("i",{class:"bi bi-x-circle-fill ms-1"},null,-1)]),8,oe)]))),128))]),_:1})],2)]),e("div",ie,[e("div",de,[h(e("input",{type:"text",class:_(["form-control form-control-sm rounded-start-3",{"is-invalid":this.allowedIpFormatError}]),placeholder:this.inputGetLocale,onKeyup:t[1]||(t[1]=E(a=>this.customAvailableIp?this.addAllowedIp(this.customAvailableIp):void 0,["enter"])),"onUpdate:modelValue":t[2]||(t[2]=a=>c.customAvailableIp=a),id:"peer_allowed_ip_textbox",disabled:n.bulk},null,42,ne),[[f,c.customAvailableIp]]),e("button",{class:_(["btn btn-sm rounded-end-3",[this.customAvailableIp?"btn-success":"btn-outline-success"]]),disabled:n.bulk||!this.customAvailableIp,onClick:t[3]||(t[3]=a=>this.addAllowedIp(this.customAvailableIp)),type:"button",id:"button-addon2"},t[7]||(t[7]=[e("i",{class:"bi bi-plus-lg"},null,-1)]),10,re)]),e("small",ce,[o(s,{t:"or"})]),e("div",ue,[e("button",{class:"btn btn-outline-secondary btn-sm dropdown-toggle rounded-3 w-100",disabled:!n.availableIp||n.bulk,"data-bs-auto-close":"outside",type:"button","data-bs-toggle":"dropdown","aria-expanded":"false"},[t[8]||(t[8]=e("i",{class:"bi bi-filter-circle me-2"},null,-1)),o(s,{t:"Pick Available IP"})],8,pe),this.availableIp?(i(),d("ul",he,[e("li",null,[e("div",be,[t[9]||(t[9]=e("label",{for:"availableIpSearchString",class:"text-muted"},[e("i",{class:"bi bi-search"})],-1)),h(e("input",{id:"availableIpSearchString",class:"form-control form-control-sm rounded-3","onUpdate:modelValue":t[4]||(t[4]=a=>this.availableIpSearchString=a)},null,512),[[f,this.availableIpSearchString]])]),t[11]||(t[11]=e("hr",{class:"my-2"},null,-1)),e("div",me,[t[10]||(t[10]=e("small",{class:"text-muted"},"Subnet",-1)),(i(!0),d(O,null,L(Object.keys(this.availableIp),a=>(i(),d("button",{key:a,onClick:u=>this.selectedSubnet=a,class:_([{"bg-primary-subtle":this.selectedSubnet===a},"btn btn-sm text-primary-emphasis rounded-3"])},S(a),11,_e))),128))]),t[12]||(t[12]=e("hr",{class:"mt-2 mb-0"},null,-1))]),e("li",null,[e("div",ve,[(i(!0),d(O,null,L(this.searchAvailableIps,a=>(i(),d("div",{style:{},key:a},[e("a",{class:"dropdown-item d-flex",role:"button",onClick:u=>this.addAllowedIp(a)},[e("span",ke,[e("small",null,S(a),1)])],8,fe)]))),128)),this.searchAvailableIps.length===0?(i(),d("div",ye,[this.availableIpSearchString?(i(),d("small",ge,[o(s,{t:"No available IP containing"}),w('"'+S(this.availableIpSearchString)+'"',1)])):(i(),d("small",we,[o(s,{t:"No more IP address available in this subnet"})]))])):g("",!0)])])])):g("",!0)])])],2)}const $e=k(Z,[["render",xe],["__scopeId","data-v-ed72944d"]]),Ie={name:"dnsInput",components:{LocaleText:p},props:{data:Object,saving:Boolean},data(){return{error:!1,dns:JSON.parse(JSON.stringify(this.data.DNS))}},setup(){const l=$(),t=I();return{store:l,dashboardStore:t}},methods:{checkDNS(){if(this.dns){let l=this.dns.split(",").map(t=>t.replaceAll(" ",""));for(let t in l)if(!this.store.regexCheckIP(l[t])){this.error||this.dashboardStore.newMessage("WGDashboard","DNS format is incorrect","danger"),this.error=!0,this.data.DNS="";return}this.error=!1,this.data.DNS=this.dns}}},watch:{dns(){this.checkDNS()}}},Ae={for:"peer_DNS_textbox",class:"form-label"},Pe={class:"text-muted"},Se=["disabled"];function Ke(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("label",Ae,[e("small",Pe,[o(s,{t:"DNS"})])]),h(e("input",{type:"text",class:_(["form-control form-control-sm rounded-3",{"is-invalid":this.error}]),disabled:this.saving,"onUpdate:modelValue":t[0]||(t[0]=a=>this.dns=a),id:"peer_DNS_textbox"},null,10,Se),[[f,this.dns]])])}const Ce=k(Ie,[["render",Ke]]),Oe={name:"nameInput",components:{LocaleText:p},props:{bulk:Boolean,data:Object,saving:Boolean}},Le={for:"peer_name_textbox",class:"form-label"},Ne={class:"text-muted"},De=["disabled"];function Te(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",{class:_({inactiveField:this.bulk})},[e("label",Le,[e("small",Ne,[o(s,{t:"Name"})])]),h(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving||this.bulk,"onUpdate:modelValue":t[0]||(t[0]=a=>this.data.name=a),id:"peer_name_textbox",placeholder:""},null,8,De),[[f,this.data.name]])],2)}const Ve=k(Oe,[["render",Te]]),Be={name:"privatePublicKeyInput",components:{LocaleText:p},props:{data:Object,saving:Boolean,bulk:Boolean},setup(){const l=I(),t=$();return{dashboardStore:l,wgStore:t}},data(){return{keypair:{publicKey:"",privateKey:"",presharedKey:""},editKey:!1,error:!1}},methods:{genKeyPair(){this.editKey=!1,this.keypair=window.wireguard.generateKeypair(),this.data.private_key=this.keypair.privateKey,this.data.public_key=this.keypair.publicKey},testKey(l){return/^[A-Za-z0-9+/]{43}=?=?$/.test(l)},checkMatching(){try{this.keypair.privateKey&&this.wgStore.checkWGKeyLength(this.keypair.privateKey)&&(this.keypair.publicKey=window.wireguard.generatePublicKey(this.keypair.privateKey),window.wireguard.generatePublicKey(this.keypair.privateKey)!==this.keypair.publicKey?(this.error=!0,this.dashboardStore.newMessage("WGDashboard","Private key does not match with the public key","danger")):(this.data.private_key=this.keypair.privateKey,this.data.public_key=this.keypair.publicKey))}catch{this.error=!0,this.data.private_key="",this.data.public_key=""}}},mounted(){this.genKeyPair()},watch:{keypair:{deep:!0,handler(){this.error=!1,this.checkMatching()}}}},Me={for:"peer_private_key_textbox",class:"form-label"},Ue={class:"text-muted"},je={class:"input-group"},Ee=["disabled"],Fe=["disabled"],Ge={class:"d-flex flex-column flex-md-row mb-2"},Re={for:"public_key",class:"form-label mb-0"},qe={class:"text-muted"},We={class:"form-check form-switch ms-md-auto"},Je=["disabled"],ze={class:"form-check-label",for:"enablePublicKeyEdit"},He=["disabled"];function Qe(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",{class:_(["d-flex gap-2 flex-column",{inactiveField:this.bulk}])},[e("div",null,[e("label",Me,[e("small",Ue,[o(s,{t:"Private Key"}),t[6]||(t[6]=w()),e("code",null,[o(s,{t:"(Required for QR Code and Download)"})])])]),e("div",je,[h(e("input",{type:"text",class:_(["form-control form-control-sm rounded-start-3",{"is-invalid":this.error}]),"onUpdate:modelValue":t[0]||(t[0]=a=>this.keypair.privateKey=a),disabled:!this.editKey||this.bulk,onBlur:t[1]||(t[1]=a=>this.checkMatching()),id:"peer_private_key_textbox"},null,42,Ee),[[f,this.keypair.privateKey]]),e("button",{class:"btn btn-outline-info btn-sm rounded-end-3",onClick:t[2]||(t[2]=a=>this.genKeyPair()),disabled:this.bulk,type:"button",id:"button-addon2"},t[7]||(t[7]=[e("i",{class:"bi bi-arrow-repeat"},null,-1)]),8,Fe)])]),e("div",null,[e("div",Ge,[e("label",Re,[e("small",qe,[o(s,{t:"Public Key"}),t[8]||(t[8]=w()),e("code",null,[o(s,{t:"(Required)"})])])]),e("div",We,[h(e("input",{class:"form-check-input",type:"checkbox",role:"switch",disabled:this.bulk,id:"enablePublicKeyEdit","onUpdate:modelValue":t[3]||(t[3]=a=>this.editKey=a)},null,8,Je),[[A,this.editKey]]),e("label",ze,[e("small",null,[o(s,{t:"Use your own Private and Public Key"})])])])]),h(e("input",{class:_(["form-control-sm form-control rounded-3",{"is-invalid":this.error}]),"onUpdate:modelValue":t[4]||(t[4]=a=>this.keypair.publicKey=a),onBlur:t[5]||(t[5]=a=>this.checkMatching()),disabled:!this.editKey||this.bulk,type:"text",id:"public_key"},null,42,He),[[f,this.keypair.publicKey]])])],2)}const Ye=k(Be,[["render",Qe]]),Ze={name:"bulkAdd",components:{LocaleText:p},props:{saving:Boolean,data:Object,availableIp:void 0},data(){return{numberOfAvailableIPs:null}},computed:{bulkAddGetLocale(){return T("How many peers you want to add?")},getNumberOfAvailableIPs(){return this.numberOfAvailableIPs?Object.values(this.numberOfAvailableIPs).reduce((l,t)=>l+t):"..."}},watch:{"data.bulkAdd":{immediate:!0,handler(l){l&&V("/api/getNumberOfAvailableIPs/"+this.$route.params.id,{},t=>{t.status&&(this.numberOfAvailableIPs=t.data)})}}}},Xe={class:"form-check form-switch"},et=["disabled"],tt={class:"form-check-label me-2",for:"bulk_add"},st={class:"text-muted d-block"},at={key:0,class:"form-group"},lt=["max","placeholder"],ot={class:"text-muted"};function it(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("div",Xe,[h(e("input",{class:"form-check-input",type:"checkbox",role:"switch",disabled:!this.availableIp,id:"bulk_add","onUpdate:modelValue":t[0]||(t[0]=a=>this.data.bulkAdd=a)},null,8,et),[[A,this.data.bulkAdd]]),e("label",tt,[e("small",null,[e("strong",null,[o(s,{t:"Bulk Add"})])])])]),e("p",{class:_({"mb-0":!this.data.bulkAdd})},[e("small",st,[o(s,{t:"By adding peers by bulk, each peer's name will be auto generated, and Allowed IP will be assign to the next available IP."})])],2),this.data.bulkAdd?(i(),d("div",at,[h(e("input",{class:"form-control form-control-sm rounded-3 mb-1",type:"number",min:"1",id:"bulk_add_count",max:this.availableIp.length,"onUpdate:modelValue":t[1]||(t[1]=a=>this.data.bulkAddAmount=a),placeholder:this.bulkAddGetLocale},null,8,lt),[[f,this.data.bulkAddAmount]]),e("small",ot,[o(s,{t:"You can add up to "+v.getNumberOfAvailableIPs+" peers"},null,8,["t"])])])):g("",!0)])}const dt=k(Ze,[["render",it]]),nt={name:"presharedKeyInput",components:{LocaleText:p},props:{data:Object,saving:Boolean},data(){return{enable:!1}},watch:{enable(){this.enable?this.data.preshared_key=window.wireguard.generateKeypair().presharedKey:this.data.preshared_key=""}}},rt={class:"d-flex align-items-start"},ct={for:"peer_preshared_key_textbox",class:"form-label"},ut={class:"text-muted"},pt={class:"form-check form-switch ms-auto"},ht=["disabled"];function bt(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("div",rt,[e("label",ct,[e("small",ut,[o(s,{t:"Pre-Shared Key"})])]),e("div",pt,[h(e("input",{class:"form-check-input",type:"checkbox",role:"switch","onUpdate:modelValue":t[0]||(t[0]=a=>this.enable=a),id:"peer_preshared_key_switch"},null,512),[[A,this.enable]])])]),h(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving||!this.enable,"onUpdate:modelValue":t[1]||(t[1]=a=>this.data.preshared_key=a),id:"peer_preshared_key_textbox"},null,8,ht),[[f,this.data.preshared_key]])])}const mt=k(nt,[["render",bt]]),_t={name:"mtuInput",components:{LocaleText:p},props:{data:Object,saving:Boolean}},vt={for:"peer_mtu",class:"form-label"},ft={class:"text-muted"},kt=["disabled"];function yt(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("label",vt,[e("small",ft,[o(s,{t:"MTU"})])]),h(e("input",{type:"number",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[0]||(t[0]=a=>this.data.mtu=a),min:"0",id:"peer_mtu"},null,8,kt),[[f,this.data.mtu]])])}const gt=k(_t,[["render",yt]]),wt={name:"persistentKeepAliveInput",components:{LocaleText:p},props:{data:Object,saving:Boolean}},xt={for:"peer_keep_alive",class:"form-label"},$t={class:"text-muted"},It=["disabled"];function At(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("label",xt,[e("small",$t,[o(s,{t:"Persistent Keepalive"})])]),h(e("input",{type:"number",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[0]||(t[0]=a=>this.data.keepalive=a),id:"peer_keep_alive"},null,8,It),[[f,this.data.keepalive]])])}const Pt=k(wt,[["render",At]]),St={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll",ref:"editConfigurationContainer"},Kt={class:"container d-flex h-100 w-100"},Ct={class:"m-auto modal-dialog-centered dashboardModal",style:{width:"1000px"}},Ot={class:"card rounded-3 shadow flex-grow-1"},Lt={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4"},Nt={class:"mb-0"},Dt={class:"card-body px-4 pb-4"},Tt={class:"d-flex flex-column gap-2"},Vt={class:"accordion mb-3",id:"peerAddModalAccordion"},Bt={class:"accordion-item"},Mt={class:"accordion-header"},Ut={class:"accordion-button collapsed rounded-3",type:"button","data-bs-toggle":"collapse","data-bs-target":"#peerAddModalAccordionAdvancedOptions"},jt={id:"peerAddModalAccordionAdvancedOptions",class:"accordion-collapse collapse collapsed","data-bs-parent":"#peerAddModalAccordion"},Et={class:"accordion-body rounded-bottom-3"},Ft={class:"d-flex flex-column gap-2"},Gt={class:"row gy-3"},Rt={key:0,class:"col-sm"},qt={class:"col-sm"},Wt={class:"col-sm"},Jt={key:1,class:"col-12"},zt={class:"form-check form-switch"},Ht={class:"form-check-label",for:"bullAdd_PresharedKey_Switch"},Qt={class:"fw-bold"},Yt={class:"d-flex mt-2"},Zt=["disabled"],Xt={key:0,class:"bi bi-plus-circle-fill me-2"},ss={__name:"peerAddModal",emits:["close","addedPeers"],async setup(l,{emit:t}){let n,r;const c=I(),v=$(),s=C({bulkAdd:!1,bulkAddAmount:0,name:"",allowed_ips:[],private_key:"",public_key:"",DNS:c.Configuration.Peers.peer_global_dns,endpoint_allowed_ip:c.Configuration.Peers.peer_endpoint_allowed_ip,keepalive:parseInt(c.Configuration.Peers.peer_keep_alive),mtu:parseInt(c.Configuration.Peers.peer_mtu),preshared_key:"",preshared_key_bulkAdd:!1,advanced_security:"off",allowed_ips_validation:!0}),a=C([]),u=C(!1),P=F();[n,r]=G(()=>V("/api/getAvailableIPs/"+P.params.id,{},m=>{m.status&&(a.value=m.data)})),await n,r();const N=t;D(()=>v.Configurations.find(m=>m.Name===P.params.id).Protocol);const B=D(()=>{let m=!0;return s.value.bulkAdd?(s.value.bulkAddAmount.length===0||s.value.bulkAddAmount>a.value.length)&&(m=!1):["allowed_ips","private_key","public_key","endpoint_allowed_ip","keepalive","mtu"].forEach(x=>{s.value[x].length===0&&(m=!1)}),m}),M=()=>{u.value=!0,q("/api/addPeers/"+P.params.id,s.value,m=>{m.status?(c.newMessage("Server","Peer created successfully","success"),N("addedPeers")):c.newMessage("Server",m.message,"danger"),u.value=!1})};return R(()=>s.value.bulkAddAmount,()=>{s.value.bulkAddAmount>a.value.length&&(s.value.bulkAddAmount=a.value.length)}),(m,b)=>(i(),d("div",St,[e("div",Kt,[e("div",Ct,[e("div",Ot,[e("div",Lt,[e("h4",Nt,[o(p,{t:"Add Peers"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:b[0]||(b[0]=x=>N("close"))})]),e("div",Dt,[e("div",Tt,[o(dt,{saving:u.value,data:s.value,availableIp:a.value},null,8,["saving","data","availableIp"]),s.value.bulkAdd?g("",!0):(i(),d(O,{key:0},[b[3]||(b[3]=e("hr",{class:"mb-0 mt-2"},null,-1)),o(Ve,{saving:u.value,data:s.value},null,8,["saving","data"]),o(Ye,{saving:u.value,data:s.value},null,8,["saving","data"]),o($e,{availableIp:a.value,saving:u.value,data:s.value},null,8,["availableIp","saving","data"])],64))]),b[5]||(b[5]=e("hr",null,null,-1)),e("div",Vt,[e("div",Bt,[e("h2",Mt,[e("button",Ut,[o(p,{t:"Advanced Options"})])]),e("div",jt,[e("div",Et,[e("div",Ft,[o(Ce,{saving:u.value,data:s.value},null,8,["saving","data"]),o(Y,{saving:u.value,data:s.value},null,8,["saving","data"]),e("div",Gt,[s.value.bulkAdd?g("",!0):(i(),d("div",Rt,[o(mt,{saving:u.value,data:s.value,bulk:s.value.bulkAdd},null,8,["saving","data","bulk"])])),e("div",qt,[o(gt,{saving:u.value,data:s.value},null,8,["saving","data"])]),e("div",Wt,[o(Pt,{saving:u.value,data:s.value},null,8,["saving","data"])]),s.value.bulkAdd?(i(),d("div",Jt,[e("div",zt,[h(e("input",{class:"form-check-input",type:"checkbox",role:"switch","onUpdate:modelValue":b[1]||(b[1]=x=>s.value.preshared_key_bulkAdd=x),id:"bullAdd_PresharedKey_Switch",checked:""},null,512),[[A,s.value.preshared_key_bulkAdd]]),e("label",Ht,[e("small",Qt,[o(p,{t:"Pre-Shared Key"}),b[4]||(b[4]=w()),s.value.preshared_key_bulkAdd?(i(),K(p,{key:0,t:"Enabled"})):(i(),K(p,{key:1,t:"Disabled"}))])])])])):g("",!0)])])])])])]),e("div",Yt,[e("button",{class:"ms-auto btn btn-dark btn-brand rounded-3 px-3 py-2 shadow",disabled:!B.value||u.value,onClick:b[2]||(b[2]=x=>M())},[u.value?g("",!0):(i(),d("i",Xt)),u.value?(i(),K(p,{key:1,t:"Adding..."})):(i(),K(p,{key:2,t:"Add"}))],8,Zt)])])])])])],512))}};export{ss as default}; +import{_ as k,W as $,D as I,k as y,a as i,c as d,b as e,d as o,f as w,m as h,y as f,n as _,r as C,G as T,v as A,w as U,F as O,h as L,t as S,T as j,C as E,e as g,g as V,J as F,O as G,q as D,H as R,i as K,A as q}from"./index-AzYVPyhh.js";import{L as p}from"./localeText-qJNpKS91.js";const W={name:"endpointAllowedIps",components:{LocaleText:p},props:{data:Object,saving:Boolean},setup(){const l=$(),t=I();return{store:l,dashboardStore:t}},data(){return{endpointAllowedIps:JSON.parse(JSON.stringify(this.data.endpoint_allowed_ip)),error:!1}},methods:{checkAllowedIP(){let l=this.endpointAllowedIps.split(",").map(t=>t.replaceAll(" ",""));for(let t in l)if(!this.store.checkCIDR(l[t])){this.error||this.dashboardStore.newMessage("WGDashboard","Endpoint Allowed IPs format is incorrect","danger"),this.data.endpoint_allowed_ip="",this.error=!0;return}this.error=!1,this.data.endpoint_allowed_ip=this.endpointAllowedIps}},watch:{endpointAllowedIps(){this.checkAllowedIP()}}},J={for:"peer_endpoint_allowed_ips",class:"form-label"},z={class:"text-muted"},H=["disabled"];function Q(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("label",J,[e("small",z,[o(s,{t:"Endpoint Allowed IPs"}),t[2]||(t[2]=w()),e("code",null,[o(s,{t:"(Required)"})])])]),h(e("input",{type:"text",class:_(["form-control form-control-sm rounded-3",{"is-invalid":c.error}]),disabled:this.saving,"onUpdate:modelValue":t[0]||(t[0]=a=>this.endpointAllowedIps=a),onBlur:t[1]||(t[1]=a=>this.checkAllowedIP()),id:"peer_endpoint_allowed_ips"},null,42,H),[[f,this.endpointAllowedIps]])])}const Y=k(W,[["render",Q]]),Z={name:"allowedIPsInput",components:{LocaleText:p},props:{data:Object,saving:Boolean,bulk:Boolean,availableIp:void 0},data(){return{allowedIp:[],availableIpSearchString:"",customAvailableIp:"",allowedIpFormatError:!1}},setup(l){const t=$(),n=I(),r=C("");return Object.keys(l.availableIp).length>0&&(r.value=Object.keys(l.availableIp)[0]),{store:t,dashboardStore:n,selectedSubnet:r}},computed:{searchAvailableIps(){return this.availableIpSearchString?this.availableIp[this.selectedSubnet].filter(l=>l.includes(this.availableIpSearchString)&&!this.data.allowed_ips.includes(l)):this.availableIp[this.selectedSubnet].filter(l=>!this.data.allowed_ips.includes(l))},inputGetLocale(){return T("Enter IP Address/CIDR")}},methods:{addAllowedIp(l){let t=l.split(",");for(let n=0;n0&&this.data.allowed_ips.length===0)for(let l in this.availableIp)this.availableIp[l].length>0&&this.addAllowedIp(this.availableIp[l][0])}},X={class:"d-flex flex-column flex-md-row mb-2"},ee={for:"peer_allowed_ip_textbox",class:"form-label mb-0"},te={class:"text-muted"},se={class:"form-check form-switch ms-md-auto"},ae={class:"form-check-label",for:"disableIPValidation"},le={class:"d-flex"},oe=["onClick"],ie={class:"d-flex gap-2 align-items-center"},de={class:"input-group"},ne=["placeholder","disabled"],re=["disabled"],ce={class:"text-muted"},ue={class:"dropdown flex-grow-1"},pe=["disabled"],he={key:0,class:"dropdown-menu mt-2 shadow w-100 dropdown-menu-end rounded-3 pb-0",style:{width:"300px !important"}},be={class:"px-3 d-flex gap-3 align-items-center"},me={class:"px-3 overflow-x-scroll d-flex overflow-x-scroll overflow-y-hidden align-items-center gap-2"},_e=["onClick"],ve={class:"overflow-y-scroll",style:{height:"270px"}},fe=["onClick"],ke={class:"me-auto"},ye={key:0,class:"px-3 py-2"},ge={key:0,class:"text-muted"},we={key:1,class:"text-muted"};function xe(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",{class:_({inactiveField:this.bulk})},[e("div",X,[e("label",ee,[e("small",te,[o(s,{t:"Allowed IPs"}),t[5]||(t[5]=w()),e("code",null,[o(s,{t:"(Required)"})])])]),e("div",se,[h(e("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":t[0]||(t[0]=a=>this.data.allowed_ips_validation=a),role:"switch",id:"disableIPValidation"},null,512),[[A,this.data.allowed_ips_validation]]),e("label",ae,[e("small",null,[o(s,{t:"Allowed IPs Validation"})])])])]),e("div",le,[e("div",{class:_(["d-flex gap-2 flex-wrap",{"mb-2":this.data.allowed_ips.length>0}])},[o(j,{name:"list"},{default:U(()=>[(i(!0),d(O,null,L(this.data.allowed_ips,(a,u)=>(i(),d("span",{class:"badge rounded-pill text-bg-success",key:a},[w(S(a)+" ",1),e("a",{role:"button",onClick:P=>this.data.allowed_ips.splice(u,1)},t[6]||(t[6]=[e("i",{class:"bi bi-x-circle-fill ms-1"},null,-1)]),8,oe)]))),128))]),_:1})],2)]),e("div",ie,[e("div",de,[h(e("input",{type:"text",class:_(["form-control form-control-sm rounded-start-3",{"is-invalid":this.allowedIpFormatError}]),placeholder:this.inputGetLocale,onKeyup:t[1]||(t[1]=E(a=>this.customAvailableIp?this.addAllowedIp(this.customAvailableIp):void 0,["enter"])),"onUpdate:modelValue":t[2]||(t[2]=a=>c.customAvailableIp=a),id:"peer_allowed_ip_textbox",disabled:n.bulk},null,42,ne),[[f,c.customAvailableIp]]),e("button",{class:_(["btn btn-sm rounded-end-3",[this.customAvailableIp?"btn-success":"btn-outline-success"]]),disabled:n.bulk||!this.customAvailableIp,onClick:t[3]||(t[3]=a=>this.addAllowedIp(this.customAvailableIp)),type:"button",id:"button-addon2"},t[7]||(t[7]=[e("i",{class:"bi bi-plus-lg"},null,-1)]),10,re)]),e("small",ce,[o(s,{t:"or"})]),e("div",ue,[e("button",{class:"btn btn-outline-secondary btn-sm dropdown-toggle rounded-3 w-100",disabled:!n.availableIp||n.bulk,"data-bs-auto-close":"outside",type:"button","data-bs-toggle":"dropdown","aria-expanded":"false"},[t[8]||(t[8]=e("i",{class:"bi bi-filter-circle me-2"},null,-1)),o(s,{t:"Pick Available IP"})],8,pe),this.availableIp?(i(),d("ul",he,[e("li",null,[e("div",be,[t[9]||(t[9]=e("label",{for:"availableIpSearchString",class:"text-muted"},[e("i",{class:"bi bi-search"})],-1)),h(e("input",{id:"availableIpSearchString",class:"form-control form-control-sm rounded-3","onUpdate:modelValue":t[4]||(t[4]=a=>this.availableIpSearchString=a)},null,512),[[f,this.availableIpSearchString]])]),t[11]||(t[11]=e("hr",{class:"my-2"},null,-1)),e("div",me,[t[10]||(t[10]=e("small",{class:"text-muted"},"Subnet",-1)),(i(!0),d(O,null,L(Object.keys(this.availableIp),a=>(i(),d("button",{key:a,onClick:u=>this.selectedSubnet=a,class:_([{"bg-primary-subtle":this.selectedSubnet===a},"btn btn-sm text-primary-emphasis rounded-3"])},S(a),11,_e))),128))]),t[12]||(t[12]=e("hr",{class:"mt-2 mb-0"},null,-1))]),e("li",null,[e("div",ve,[(i(!0),d(O,null,L(this.searchAvailableIps,a=>(i(),d("div",{style:{},key:a},[e("a",{class:"dropdown-item d-flex",role:"button",onClick:u=>this.addAllowedIp(a)},[e("span",ke,[e("small",null,S(a),1)])],8,fe)]))),128)),this.searchAvailableIps.length===0?(i(),d("div",ye,[this.availableIpSearchString?(i(),d("small",ge,[o(s,{t:"No available IP containing"}),w('"'+S(this.availableIpSearchString)+'"',1)])):(i(),d("small",we,[o(s,{t:"No more IP address available in this subnet"})]))])):g("",!0)])])])):g("",!0)])])],2)}const $e=k(Z,[["render",xe],["__scopeId","data-v-ed72944d"]]),Ie={name:"dnsInput",components:{LocaleText:p},props:{data:Object,saving:Boolean},data(){return{error:!1,dns:JSON.parse(JSON.stringify(this.data.DNS))}},setup(){const l=$(),t=I();return{store:l,dashboardStore:t}},methods:{checkDNS(){if(this.dns){let l=this.dns.split(",").map(t=>t.replaceAll(" ",""));for(let t in l)if(!this.store.regexCheckIP(l[t])){this.error||this.dashboardStore.newMessage("WGDashboard","DNS format is incorrect","danger"),this.error=!0,this.data.DNS="";return}this.error=!1,this.data.DNS=this.dns}}},watch:{dns(){this.checkDNS()}}},Ae={for:"peer_DNS_textbox",class:"form-label"},Pe={class:"text-muted"},Se=["disabled"];function Ke(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("label",Ae,[e("small",Pe,[o(s,{t:"DNS"})])]),h(e("input",{type:"text",class:_(["form-control form-control-sm rounded-3",{"is-invalid":this.error}]),disabled:this.saving,"onUpdate:modelValue":t[0]||(t[0]=a=>this.dns=a),id:"peer_DNS_textbox"},null,10,Se),[[f,this.dns]])])}const Ce=k(Ie,[["render",Ke]]),Oe={name:"nameInput",components:{LocaleText:p},props:{bulk:Boolean,data:Object,saving:Boolean}},Le={for:"peer_name_textbox",class:"form-label"},Ne={class:"text-muted"},De=["disabled"];function Te(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",{class:_({inactiveField:this.bulk})},[e("label",Le,[e("small",Ne,[o(s,{t:"Name"})])]),h(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving||this.bulk,"onUpdate:modelValue":t[0]||(t[0]=a=>this.data.name=a),id:"peer_name_textbox",placeholder:""},null,8,De),[[f,this.data.name]])],2)}const Ve=k(Oe,[["render",Te]]),Be={name:"privatePublicKeyInput",components:{LocaleText:p},props:{data:Object,saving:Boolean,bulk:Boolean},setup(){const l=I(),t=$();return{dashboardStore:l,wgStore:t}},data(){return{keypair:{publicKey:"",privateKey:"",presharedKey:""},editKey:!1,error:!1}},methods:{genKeyPair(){this.editKey=!1,this.keypair=window.wireguard.generateKeypair(),this.data.private_key=this.keypair.privateKey,this.data.public_key=this.keypair.publicKey},testKey(l){return/^[A-Za-z0-9+/]{43}=?=?$/.test(l)},checkMatching(){try{this.keypair.privateKey&&this.wgStore.checkWGKeyLength(this.keypair.privateKey)&&(this.keypair.publicKey=window.wireguard.generatePublicKey(this.keypair.privateKey),window.wireguard.generatePublicKey(this.keypair.privateKey)!==this.keypair.publicKey?(this.error=!0,this.dashboardStore.newMessage("WGDashboard","Private key does not match with the public key","danger")):(this.data.private_key=this.keypair.privateKey,this.data.public_key=this.keypair.publicKey))}catch{this.error=!0,this.data.private_key="",this.data.public_key=""}}},mounted(){this.genKeyPair()},watch:{keypair:{deep:!0,handler(){this.error=!1,this.checkMatching()}}}},Me={for:"peer_private_key_textbox",class:"form-label"},Ue={class:"text-muted"},je={class:"input-group"},Ee=["disabled"],Fe=["disabled"],Ge={class:"d-flex flex-column flex-md-row mb-2"},Re={for:"public_key",class:"form-label mb-0"},qe={class:"text-muted"},We={class:"form-check form-switch ms-md-auto"},Je=["disabled"],ze={class:"form-check-label",for:"enablePublicKeyEdit"},He=["disabled"];function Qe(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",{class:_(["d-flex gap-2 flex-column",{inactiveField:this.bulk}])},[e("div",null,[e("label",Me,[e("small",Ue,[o(s,{t:"Private Key"}),t[6]||(t[6]=w()),e("code",null,[o(s,{t:"(Required for QR Code and Download)"})])])]),e("div",je,[h(e("input",{type:"text",class:_(["form-control form-control-sm rounded-start-3",{"is-invalid":this.error}]),"onUpdate:modelValue":t[0]||(t[0]=a=>this.keypair.privateKey=a),disabled:!this.editKey||this.bulk,onBlur:t[1]||(t[1]=a=>this.checkMatching()),id:"peer_private_key_textbox"},null,42,Ee),[[f,this.keypair.privateKey]]),e("button",{class:"btn btn-outline-info btn-sm rounded-end-3",onClick:t[2]||(t[2]=a=>this.genKeyPair()),disabled:this.bulk,type:"button",id:"button-addon2"},t[7]||(t[7]=[e("i",{class:"bi bi-arrow-repeat"},null,-1)]),8,Fe)])]),e("div",null,[e("div",Ge,[e("label",Re,[e("small",qe,[o(s,{t:"Public Key"}),t[8]||(t[8]=w()),e("code",null,[o(s,{t:"(Required)"})])])]),e("div",We,[h(e("input",{class:"form-check-input",type:"checkbox",role:"switch",disabled:this.bulk,id:"enablePublicKeyEdit","onUpdate:modelValue":t[3]||(t[3]=a=>this.editKey=a)},null,8,Je),[[A,this.editKey]]),e("label",ze,[e("small",null,[o(s,{t:"Use your own Private and Public Key"})])])])]),h(e("input",{class:_(["form-control-sm form-control rounded-3",{"is-invalid":this.error}]),"onUpdate:modelValue":t[4]||(t[4]=a=>this.keypair.publicKey=a),onBlur:t[5]||(t[5]=a=>this.checkMatching()),disabled:!this.editKey||this.bulk,type:"text",id:"public_key"},null,42,He),[[f,this.keypair.publicKey]])])],2)}const Ye=k(Be,[["render",Qe]]),Ze={name:"bulkAdd",components:{LocaleText:p},props:{saving:Boolean,data:Object,availableIp:void 0},data(){return{numberOfAvailableIPs:null}},computed:{bulkAddGetLocale(){return T("How many peers you want to add?")},getNumberOfAvailableIPs(){return this.numberOfAvailableIPs?Object.values(this.numberOfAvailableIPs).reduce((l,t)=>l+t):"..."}},watch:{"data.bulkAdd":{immediate:!0,handler(l){l&&V("/api/getNumberOfAvailableIPs/"+this.$route.params.id,{},t=>{t.status&&(this.numberOfAvailableIPs=t.data)})}}}},Xe={class:"form-check form-switch"},et=["disabled"],tt={class:"form-check-label me-2",for:"bulk_add"},st={class:"text-muted d-block"},at={key:0,class:"form-group"},lt=["max","placeholder"],ot={class:"text-muted"};function it(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("div",Xe,[h(e("input",{class:"form-check-input",type:"checkbox",role:"switch",disabled:!this.availableIp,id:"bulk_add","onUpdate:modelValue":t[0]||(t[0]=a=>this.data.bulkAdd=a)},null,8,et),[[A,this.data.bulkAdd]]),e("label",tt,[e("small",null,[e("strong",null,[o(s,{t:"Bulk Add"})])])])]),e("p",{class:_({"mb-0":!this.data.bulkAdd})},[e("small",st,[o(s,{t:"By adding peers by bulk, each peer's name will be auto generated, and Allowed IP will be assign to the next available IP."})])],2),this.data.bulkAdd?(i(),d("div",at,[h(e("input",{class:"form-control form-control-sm rounded-3 mb-1",type:"number",min:"1",id:"bulk_add_count",max:this.availableIp.length,"onUpdate:modelValue":t[1]||(t[1]=a=>this.data.bulkAddAmount=a),placeholder:this.bulkAddGetLocale},null,8,lt),[[f,this.data.bulkAddAmount]]),e("small",ot,[o(s,{t:"You can add up to "+v.getNumberOfAvailableIPs+" peers"},null,8,["t"])])])):g("",!0)])}const dt=k(Ze,[["render",it]]),nt={name:"presharedKeyInput",components:{LocaleText:p},props:{data:Object,saving:Boolean},data(){return{enable:!1}},watch:{enable(){this.enable?this.data.preshared_key=window.wireguard.generateKeypair().presharedKey:this.data.preshared_key=""}}},rt={class:"d-flex align-items-start"},ct={for:"peer_preshared_key_textbox",class:"form-label"},ut={class:"text-muted"},pt={class:"form-check form-switch ms-auto"},ht=["disabled"];function bt(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("div",rt,[e("label",ct,[e("small",ut,[o(s,{t:"Pre-Shared Key"})])]),e("div",pt,[h(e("input",{class:"form-check-input",type:"checkbox",role:"switch","onUpdate:modelValue":t[0]||(t[0]=a=>this.enable=a),id:"peer_preshared_key_switch"},null,512),[[A,this.enable]])])]),h(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving||!this.enable,"onUpdate:modelValue":t[1]||(t[1]=a=>this.data.preshared_key=a),id:"peer_preshared_key_textbox"},null,8,ht),[[f,this.data.preshared_key]])])}const mt=k(nt,[["render",bt]]),_t={name:"mtuInput",components:{LocaleText:p},props:{data:Object,saving:Boolean}},vt={for:"peer_mtu",class:"form-label"},ft={class:"text-muted"},kt=["disabled"];function yt(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("label",vt,[e("small",ft,[o(s,{t:"MTU"})])]),h(e("input",{type:"number",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[0]||(t[0]=a=>this.data.mtu=a),min:"0",id:"peer_mtu"},null,8,kt),[[f,this.data.mtu]])])}const gt=k(_t,[["render",yt]]),wt={name:"persistentKeepAliveInput",components:{LocaleText:p},props:{data:Object,saving:Boolean}},xt={for:"peer_keep_alive",class:"form-label"},$t={class:"text-muted"},It=["disabled"];function At(l,t,n,r,c,v){const s=y("LocaleText");return i(),d("div",null,[e("label",xt,[e("small",$t,[o(s,{t:"Persistent Keepalive"})])]),h(e("input",{type:"number",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[0]||(t[0]=a=>this.data.keepalive=a),id:"peer_keep_alive"},null,8,It),[[f,this.data.keepalive]])])}const Pt=k(wt,[["render",At]]),St={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll",ref:"editConfigurationContainer"},Kt={class:"container d-flex h-100 w-100"},Ct={class:"m-auto modal-dialog-centered dashboardModal",style:{width:"1000px"}},Ot={class:"card rounded-3 shadow flex-grow-1"},Lt={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4"},Nt={class:"mb-0"},Dt={class:"card-body px-4 pb-4"},Tt={class:"d-flex flex-column gap-2"},Vt={class:"accordion mb-3",id:"peerAddModalAccordion"},Bt={class:"accordion-item"},Mt={class:"accordion-header"},Ut={class:"accordion-button collapsed rounded-3",type:"button","data-bs-toggle":"collapse","data-bs-target":"#peerAddModalAccordionAdvancedOptions"},jt={id:"peerAddModalAccordionAdvancedOptions",class:"accordion-collapse collapse collapsed","data-bs-parent":"#peerAddModalAccordion"},Et={class:"accordion-body rounded-bottom-3"},Ft={class:"d-flex flex-column gap-2"},Gt={class:"row gy-3"},Rt={key:0,class:"col-sm"},qt={class:"col-sm"},Wt={class:"col-sm"},Jt={key:1,class:"col-12"},zt={class:"form-check form-switch"},Ht={class:"form-check-label",for:"bullAdd_PresharedKey_Switch"},Qt={class:"fw-bold"},Yt={class:"d-flex mt-2"},Zt=["disabled"],Xt={key:0,class:"bi bi-plus-circle-fill me-2"},ss={__name:"peerAddModal",emits:["close","addedPeers"],async setup(l,{emit:t}){let n,r;const c=I(),v=$(),s=C({bulkAdd:!1,bulkAddAmount:0,name:"",allowed_ips:[],private_key:"",public_key:"",DNS:c.Configuration.Peers.peer_global_dns,endpoint_allowed_ip:c.Configuration.Peers.peer_endpoint_allowed_ip,keepalive:parseInt(c.Configuration.Peers.peer_keep_alive),mtu:parseInt(c.Configuration.Peers.peer_mtu),preshared_key:"",preshared_key_bulkAdd:!1,advanced_security:"off",allowed_ips_validation:!0}),a=C([]),u=C(!1),P=F();[n,r]=G(()=>V("/api/getAvailableIPs/"+P.params.id,{},m=>{m.status&&(a.value=m.data)})),await n,r();const N=t;D(()=>v.Configurations.find(m=>m.Name===P.params.id).Protocol);const B=D(()=>{let m=!0;return s.value.bulkAdd?(s.value.bulkAddAmount.length===0||s.value.bulkAddAmount>a.value.length)&&(m=!1):["allowed_ips","private_key","public_key","endpoint_allowed_ip","keepalive","mtu"].forEach(x=>{s.value[x].length===0&&(m=!1)}),m}),M=()=>{u.value=!0,q("/api/addPeers/"+P.params.id,s.value,m=>{m.status?(c.newMessage("Server","Peer created successfully","success"),N("addedPeers")):c.newMessage("Server",m.message,"danger"),u.value=!1})};return R(()=>s.value.bulkAddAmount,()=>{s.value.bulkAddAmount>a.value.length&&(s.value.bulkAddAmount=a.value.length)}),(m,b)=>(i(),d("div",St,[e("div",Kt,[e("div",Ct,[e("div",Ot,[e("div",Lt,[e("h4",Nt,[o(p,{t:"Add Peers"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:b[0]||(b[0]=x=>N("close"))})]),e("div",Dt,[e("div",Tt,[o(dt,{saving:u.value,data:s.value,availableIp:a.value},null,8,["saving","data","availableIp"]),s.value.bulkAdd?g("",!0):(i(),d(O,{key:0},[b[3]||(b[3]=e("hr",{class:"mb-0 mt-2"},null,-1)),o(Ve,{saving:u.value,data:s.value},null,8,["saving","data"]),o(Ye,{saving:u.value,data:s.value},null,8,["saving","data"]),o($e,{availableIp:a.value,saving:u.value,data:s.value},null,8,["availableIp","saving","data"])],64))]),b[5]||(b[5]=e("hr",null,null,-1)),e("div",Vt,[e("div",Bt,[e("h2",Mt,[e("button",Ut,[o(p,{t:"Advanced Options"})])]),e("div",jt,[e("div",Et,[e("div",Ft,[o(Ce,{saving:u.value,data:s.value},null,8,["saving","data"]),o(Y,{saving:u.value,data:s.value},null,8,["saving","data"]),e("div",Gt,[s.value.bulkAdd?g("",!0):(i(),d("div",Rt,[o(mt,{saving:u.value,data:s.value,bulk:s.value.bulkAdd},null,8,["saving","data","bulk"])])),e("div",qt,[o(gt,{saving:u.value,data:s.value},null,8,["saving","data"])]),e("div",Wt,[o(Pt,{saving:u.value,data:s.value},null,8,["saving","data"])]),s.value.bulkAdd?(i(),d("div",Jt,[e("div",zt,[h(e("input",{class:"form-check-input",type:"checkbox",role:"switch","onUpdate:modelValue":b[1]||(b[1]=x=>s.value.preshared_key_bulkAdd=x),id:"bullAdd_PresharedKey_Switch",checked:""},null,512),[[A,s.value.preshared_key_bulkAdd]]),e("label",Ht,[e("small",Qt,[o(p,{t:"Pre-Shared Key"}),b[4]||(b[4]=w()),s.value.preshared_key_bulkAdd?(i(),K(p,{key:0,t:"Enabled"})):(i(),K(p,{key:1,t:"Disabled"}))])])])])):g("",!0)])])])])])]),e("div",Yt,[e("button",{class:"ms-auto btn btn-dark btn-brand rounded-3 px-3 py-2 shadow",disabled:!B.value||u.value,onClick:b[2]||(b[2]=x=>M())},[u.value?g("",!0):(i(),d("i",Xt)),u.value?(i(),K(p,{key:1,t:"Adding..."})):(i(),K(p,{key:2,t:"Add"}))],8,Zt)])])])])])],512))}};export{ss as default}; diff --git a/src/static/app/dist/assets/peerConfigurationFile-CP8FspMC.js b/src/static/app/dist/assets/peerConfigurationFile-D_jhzEId.js similarity index 95% rename from src/static/app/dist/assets/peerConfigurationFile-CP8FspMC.js rename to src/static/app/dist/assets/peerConfigurationFile-D_jhzEId.js index 905fed9..5054256 100644 --- a/src/static/app/dist/assets/peerConfigurationFile-CP8FspMC.js +++ b/src/static/app/dist/assets/peerConfigurationFile-D_jhzEId.js @@ -1 +1 @@ -import{_ as v,D as g,r as o,o as h,J as x,g as y,a as i,c as n,b as s,d as c,n as w,e as C,w as k,j as F}from"./index-CfPziasH.js";import{L as T}from"./localeText-CyxQ0Kz3.js";import"./browser-CjSdxGTc.js";const M={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0"},S={class:"container d-flex h-100 w-100"},D={class:"m-auto modal-dialog-centered dashboardModal justify-content-center"},P={class:"card rounded-3 shadow w-100"},j={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-0"},B={class:"mb-0"},G={class:"card-body p-4 d-flex flex-column gap-3"},L={style:{height:"300px"},class:"d-flex"},N=["value"],V={key:0,class:"spinner-border m-auto",role:"status"},I={class:"d-flex"},W=["disabled"],$={key:0,class:"d-block"},q={key:1,class:"d-block",id:"check"},z={__name:"peerConfigurationFile",props:{selectedPeer:Object},emits:["close"],setup(u,{emit:p}){const m=p,f=u,r=g(),t=o(!1),l=o(""),a=o(!0);o({error:!1,message:void 0}),h(()=>{const d=x();y("/api/downloadPeer/"+d.params.id,{id:f.selectedPeer.id},e=>{e.status?(l.value=e.data.file,a.value=!1):this.dashboardStore.newMessage("Server",e.message,"danger")})});const b=async()=>{navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText(l.value).then(()=>{t.value=!0,setTimeout(()=>{t.value=!1},3e3)}).catch(()=>{r.newMessage("WGDashboard","Failed to copy","danger")}):(document.querySelector("#peerConfigurationFile").select(),document.execCommand("copy")?(t.value=!0,setTimeout(()=>{t.value=!1},3e3)):r.newMessage("WGDashboard","Failed to copy","danger"))};return(d,e)=>(i(),n("div",M,[s("div",S,[s("div",D,[s("div",P,[s("div",j,[s("h4",B,[c(T,{t:"Peer Configuration File"})]),s("button",{type:"button",class:"btn-close ms-auto",onClick:e[0]||(e[0]=_=>m("close"))})]),s("div",G,[s("div",L,[s("textarea",{style:{height:"300px"},class:w(["form-control w-100 rounded-3 animate__fadeIn animate__faster animate__animated",{"d-none":a.value}]),id:"peerConfigurationFile",value:l.value},null,10,N),a.value?(i(),n("div",V,e[2]||(e[2]=[s("span",{class:"visually-hidden"},"Loading...",-1)]))):C("",!0)]),s("div",I,[s("button",{onClick:e[1]||(e[1]=_=>b()),disabled:t.value||a.value,class:"ms-auto btn bg-primary-subtle border-primary-subtle text-primary-emphasis rounded-3 position-relative"},[c(F,{name:"slide-up",mode:"out-in"},{default:k(()=>[t.value?(i(),n("span",q,e[4]||(e[4]=[s("i",{class:"bi bi-check-circle-fill"},null,-1)]))):(i(),n("span",$,e[3]||(e[3]=[s("i",{class:"bi bi-clipboard-fill"},null,-1)])))]),_:1})],8,W)])])])])])]))}},R=v(z,[["__scopeId","data-v-b0ea2d46"]]);export{R as default}; +import{_ as v,D as g,r as o,o as h,J as x,g as y,a as i,c as n,b as s,d as c,n as w,e as C,w as k,j as F}from"./index-AzYVPyhh.js";import{L as T}from"./localeText-qJNpKS91.js";import"./browser-CjSdxGTc.js";const M={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0"},S={class:"container d-flex h-100 w-100"},D={class:"m-auto modal-dialog-centered dashboardModal justify-content-center"},P={class:"card rounded-3 shadow w-100"},j={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-0"},B={class:"mb-0"},G={class:"card-body p-4 d-flex flex-column gap-3"},L={style:{height:"300px"},class:"d-flex"},N=["value"],V={key:0,class:"spinner-border m-auto",role:"status"},I={class:"d-flex"},W=["disabled"],$={key:0,class:"d-block"},q={key:1,class:"d-block",id:"check"},z={__name:"peerConfigurationFile",props:{selectedPeer:Object},emits:["close"],setup(u,{emit:p}){const m=p,f=u,r=g(),t=o(!1),l=o(""),a=o(!0);o({error:!1,message:void 0}),h(()=>{const d=x();y("/api/downloadPeer/"+d.params.id,{id:f.selectedPeer.id},e=>{e.status?(l.value=e.data.file,a.value=!1):this.dashboardStore.newMessage("Server",e.message,"danger")})});const b=async()=>{navigator.clipboard&&navigator.clipboard.writeText?navigator.clipboard.writeText(l.value).then(()=>{t.value=!0,setTimeout(()=>{t.value=!1},3e3)}).catch(()=>{r.newMessage("WGDashboard","Failed to copy","danger")}):(document.querySelector("#peerConfigurationFile").select(),document.execCommand("copy")?(t.value=!0,setTimeout(()=>{t.value=!1},3e3)):r.newMessage("WGDashboard","Failed to copy","danger"))};return(d,e)=>(i(),n("div",M,[s("div",S,[s("div",D,[s("div",P,[s("div",j,[s("h4",B,[c(T,{t:"Peer Configuration File"})]),s("button",{type:"button",class:"btn-close ms-auto",onClick:e[0]||(e[0]=_=>m("close"))})]),s("div",G,[s("div",L,[s("textarea",{style:{height:"300px"},class:w(["form-control w-100 rounded-3 animate__fadeIn animate__faster animate__animated",{"d-none":a.value}]),id:"peerConfigurationFile",value:l.value},null,10,N),a.value?(i(),n("div",V,e[2]||(e[2]=[s("span",{class:"visually-hidden"},"Loading...",-1)]))):C("",!0)]),s("div",I,[s("button",{onClick:e[1]||(e[1]=_=>b()),disabled:t.value||a.value,class:"ms-auto btn bg-primary-subtle border-primary-subtle text-primary-emphasis rounded-3 position-relative"},[c(F,{name:"slide-up",mode:"out-in"},{default:k(()=>[t.value?(i(),n("span",q,e[4]||(e[4]=[s("i",{class:"bi bi-check-circle-fill"},null,-1)]))):(i(),n("span",$,e[3]||(e[3]=[s("i",{class:"bi bi-clipboard-fill"},null,-1)])))]),_:1})],8,W)])])])])])]))}},R=v(z,[["__scopeId","data-v-b0ea2d46"]]);export{R as default}; diff --git a/src/static/app/dist/assets/peerJobs-BLwykEew.js b/src/static/app/dist/assets/peerJobs-OIcsbyz2.js similarity index 90% rename from src/static/app/dist/assets/peerJobs-BLwykEew.js rename to src/static/app/dist/assets/peerJobs-OIcsbyz2.js index 44a3eff..19a507a 100644 --- a/src/static/app/dist/assets/peerJobs-BLwykEew.js +++ b/src/static/app/dist/assets/peerJobs-OIcsbyz2.js @@ -1 +1 @@ -import{S as p,a as b}from"./schedulePeerJob-DtVhPy4n.js";import{_ as h,W as u,z as m,k as i,a as o,c as a,b as e,d as r,w as _,F as v,h as f,i as J,e as x,T as g}from"./index-CfPziasH.js";import{L as w}from"./localeText-CyxQ0Kz3.js";import"./vue-datepicker-BZlVex04.js";import"./dayjs.min-C4BEB1lt.js";const P={name:"peerJobs",setup(){return{store:u()}},props:{selectedPeer:Object},components:{LocaleText:w,SchedulePeerJob:p,ScheduleDropdown:b},data(){return{}},methods:{deleteJob(d){this.selectedPeer.jobs=this.selectedPeer.jobs.filter(t=>t.JobID!==d.JobID)},addJob(){this.selectedPeer.jobs.unshift(JSON.parse(JSON.stringify({JobID:m().toString(),Configuration:this.selectedPeer.configuration.Name,Peer:this.selectedPeer.id,Field:this.store.PeerScheduleJobs.dropdowns.Field[0].value,Operator:this.store.PeerScheduleJobs.dropdowns.Operator[0].value,Value:"",CreationDate:"",ExpireDate:"",Action:this.store.PeerScheduleJobs.dropdowns.Action[0].value})))}}},S={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},y={class:"container d-flex h-100 w-100"},$={class:"m-auto modal-dialog-centered dashboardModal"},C={class:"card rounded-3 shadow",style:{width:"700px"}},D={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-2"},k={class:"mb-0 fw-normal"},j={class:"card-body px-4 pb-4 pt-2 position-relative"},T={class:"d-flex align-items-center mb-3"},N={class:"card shadow-sm",key:"none",style:{height:"153px"}},I={class:"card-body text-muted text-center d-flex"},L={class:"m-auto"};function O(d,t,B,F,V,A){const n=i("LocaleText"),l=i("SchedulePeerJob");return o(),a("div",S,[e("div",y,[e("div",$,[e("div",C,[e("div",D,[e("h4",k,[r(n,{t:"Schedule Jobs"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:t[0]||(t[0]=s=>this.$emit("close"))})]),e("div",j,[e("div",T,[e("button",{class:"btn bg-primary-subtle border-1 border-primary-subtle text-primary-emphasis rounded-3 shadow",onClick:t[1]||(t[1]=s=>this.addJob())},[t[3]||(t[3]=e("i",{class:"bi bi-plus-lg me-2"},null,-1)),r(n,{t:"Job"})])]),r(g,{name:"schedulePeerJobTransition",tag:"div",class:"position-relative"},{default:_(()=>[(o(!0),a(v,null,f(this.selectedPeer.jobs,(s,E)=>(o(),J(l,{onRefresh:t[2]||(t[2]=c=>this.$emit("refresh")),onDelete:c=>this.deleteJob(s),dropdowns:this.store.PeerScheduleJobs.dropdowns,key:s.JobID,pjob:s},null,8,["onDelete","dropdowns","pjob"]))),128)),this.selectedPeer.jobs.length===0?(o(),a("div",N,[e("div",I,[e("h6",L,[r(n,{t:"This peer does not have any job yet."})])])])):x("",!0)]),_:1})])])])])])}const q=h(P,[["render",O],["__scopeId","data-v-5bbdd42b"]]);export{q as default}; +import{S as p,a as b}from"./schedulePeerJob-Cy0v4heL.js";import{_ as h,W as u,z as m,k as i,a as o,c as a,b as e,d as r,w as _,F as v,h as f,i as J,e as x,T as g}from"./index-AzYVPyhh.js";import{L as w}from"./localeText-qJNpKS91.js";import"./vue-datepicker-Co-zpMN6.js";import"./dayjs.min-DO3nadR-.js";const P={name:"peerJobs",setup(){return{store:u()}},props:{selectedPeer:Object},components:{LocaleText:w,SchedulePeerJob:p,ScheduleDropdown:b},data(){return{}},methods:{deleteJob(d){this.selectedPeer.jobs=this.selectedPeer.jobs.filter(t=>t.JobID!==d.JobID)},addJob(){this.selectedPeer.jobs.unshift(JSON.parse(JSON.stringify({JobID:m().toString(),Configuration:this.selectedPeer.configuration.Name,Peer:this.selectedPeer.id,Field:this.store.PeerScheduleJobs.dropdowns.Field[0].value,Operator:this.store.PeerScheduleJobs.dropdowns.Operator[0].value,Value:"",CreationDate:"",ExpireDate:"",Action:this.store.PeerScheduleJobs.dropdowns.Action[0].value})))}}},S={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},y={class:"container d-flex h-100 w-100"},$={class:"m-auto modal-dialog-centered dashboardModal"},C={class:"card rounded-3 shadow",style:{width:"700px"}},D={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-2"},k={class:"mb-0 fw-normal"},j={class:"card-body px-4 pb-4 pt-2 position-relative"},T={class:"d-flex align-items-center mb-3"},N={class:"card shadow-sm",key:"none",style:{height:"153px"}},I={class:"card-body text-muted text-center d-flex"},L={class:"m-auto"};function O(d,t,B,F,V,A){const n=i("LocaleText"),l=i("SchedulePeerJob");return o(),a("div",S,[e("div",y,[e("div",$,[e("div",C,[e("div",D,[e("h4",k,[r(n,{t:"Schedule Jobs"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:t[0]||(t[0]=s=>this.$emit("close"))})]),e("div",j,[e("div",T,[e("button",{class:"btn bg-primary-subtle border-1 border-primary-subtle text-primary-emphasis rounded-3 shadow",onClick:t[1]||(t[1]=s=>this.addJob())},[t[3]||(t[3]=e("i",{class:"bi bi-plus-lg me-2"},null,-1)),r(n,{t:"Job"})])]),r(g,{name:"schedulePeerJobTransition",tag:"div",class:"position-relative"},{default:_(()=>[(o(!0),a(v,null,f(this.selectedPeer.jobs,(s,E)=>(o(),J(l,{onRefresh:t[2]||(t[2]=c=>this.$emit("refresh")),onDelete:c=>this.deleteJob(s),dropdowns:this.store.PeerScheduleJobs.dropdowns,key:s.JobID,pjob:s},null,8,["onDelete","dropdowns","pjob"]))),128)),this.selectedPeer.jobs.length===0?(o(),a("div",N,[e("div",I,[e("h6",L,[r(n,{t:"This peer does not have any job yet."})])])])):x("",!0)]),_:1})])])])])])}const q=h(P,[["render",O],["__scopeId","data-v-5bbdd42b"]]);export{q as default}; diff --git a/src/static/app/dist/assets/peerJobsAllModal-DmXg9VpA.js b/src/static/app/dist/assets/peerJobsAllModal-Ca-jbk3P.js similarity index 90% rename from src/static/app/dist/assets/peerJobsAllModal-DmXg9VpA.js rename to src/static/app/dist/assets/peerJobsAllModal-Ca-jbk3P.js index fb29949..b00c764 100644 --- a/src/static/app/dist/assets/peerJobsAllModal-DmXg9VpA.js +++ b/src/static/app/dist/assets/peerJobsAllModal-Ca-jbk3P.js @@ -1 +1 @@ -import{S as _}from"./schedulePeerJob-DtVhPy4n.js";import{_ as g,W as v,k as c,a as t,c as r,b as e,d as l,F as p,h as b,t as m,e as f,i as y}from"./index-CfPziasH.js";import{L as x}from"./localeText-CyxQ0Kz3.js";import"./vue-datepicker-BZlVex04.js";import"./dayjs.min-C4BEB1lt.js";const J={name:"peerJobsAllModal",setup(){return{store:v()}},components:{LocaleText:x,SchedulePeerJob:_},props:{configurationPeers:Array[Object]},computed:{getAllJobs(){return this.configurationPeers.filter(a=>a.jobs.length>0)}}},k={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},w={class:"container d-flex h-100 w-100"},$={class:"m-auto modal-dialog-centered dashboardModal"},A={class:"card rounded-3 shadow",style:{width:"900px"}},L={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-2"},S={class:"mb-0 fw-normal"},C={class:"card-body px-4 pb-4 pt-2"},P={key:0,class:"accordion",id:"peerJobsLogsModalAccordion"},j={class:"accordion-header"},M=["data-bs-target"],B={key:0},N={class:"text-muted"},D=["id"],T={class:"accordion-body"},V={key:1,class:"card shadow-sm",style:{height:"153px"}},F={class:"card-body text-muted text-center d-flex"},O={class:"m-auto"};function W(a,o,E,I,R,q){const n=c("LocaleText"),u=c("SchedulePeerJob");return t(),r("div",k,[e("div",w,[e("div",$,[e("div",A,[e("div",L,[e("h4",S,[l(n,{t:"All Active Jobs"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:o[0]||(o[0]=s=>this.$emit("close"))})]),e("div",C,[e("button",{class:"btn bg-primary-subtle border-1 border-primary-subtle text-primary-emphasis rounded-3 shadow mb-2",onClick:o[1]||(o[1]=s=>this.$emit("allLogs"))},[o[4]||(o[4]=e("i",{class:"bi bi-clock me-2"},null,-1)),l(n,{t:"Logs"})]),this.getAllJobs.length>0?(t(),r("div",P,[(t(!0),r(p,null,b(this.getAllJobs,(s,d)=>(t(),r("div",{class:"accordion-item",key:s.id},[e("h2",j,[e("button",{class:"accordion-button collapsed",type:"button","data-bs-toggle":"collapse","data-bs-target":"#collapse_"+d},[e("small",null,[e("strong",null,[s.name?(t(),r("span",B,m(s.name)+" • ",1)):f("",!0),e("samp",N,m(s.id),1)])])],8,M)]),e("div",{id:"collapse_"+d,class:"accordion-collapse collapse","data-bs-parent":"#peerJobsLogsModalAccordion"},[e("div",T,[(t(!0),r(p,null,b(s.jobs,i=>(t(),y(u,{onDelete:o[2]||(o[2]=h=>this.$emit("refresh")),onRefresh:o[3]||(o[3]=h=>this.$emit("refresh")),dropdowns:this.store.PeerScheduleJobs.dropdowns,viewOnly:!0,key:i.JobID,pjob:i},null,8,["dropdowns","pjob"]))),128))])],8,D)]))),128))])):(t(),r("div",V,[e("div",F,[e("span",O,[l(n,{t:"No active job at the moment."})])])]))])])])])])}const U=g(J,[["render",W]]);export{U as default}; +import{S as _}from"./schedulePeerJob-Cy0v4heL.js";import{_ as g,W as v,k as c,a as t,c as r,b as e,d as l,F as p,h as b,t as m,e as f,i as y}from"./index-AzYVPyhh.js";import{L as x}from"./localeText-qJNpKS91.js";import"./vue-datepicker-Co-zpMN6.js";import"./dayjs.min-DO3nadR-.js";const J={name:"peerJobsAllModal",setup(){return{store:v()}},components:{LocaleText:x,SchedulePeerJob:_},props:{configurationPeers:Array[Object]},computed:{getAllJobs(){return this.configurationPeers.filter(a=>a.jobs.length>0)}}},k={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},w={class:"container d-flex h-100 w-100"},$={class:"m-auto modal-dialog-centered dashboardModal"},A={class:"card rounded-3 shadow",style:{width:"900px"}},L={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-2"},S={class:"mb-0 fw-normal"},C={class:"card-body px-4 pb-4 pt-2"},P={key:0,class:"accordion",id:"peerJobsLogsModalAccordion"},j={class:"accordion-header"},M=["data-bs-target"],B={key:0},N={class:"text-muted"},D=["id"],T={class:"accordion-body"},V={key:1,class:"card shadow-sm",style:{height:"153px"}},F={class:"card-body text-muted text-center d-flex"},O={class:"m-auto"};function W(a,o,E,I,R,q){const n=c("LocaleText"),u=c("SchedulePeerJob");return t(),r("div",k,[e("div",w,[e("div",$,[e("div",A,[e("div",L,[e("h4",S,[l(n,{t:"All Active Jobs"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:o[0]||(o[0]=s=>this.$emit("close"))})]),e("div",C,[e("button",{class:"btn bg-primary-subtle border-1 border-primary-subtle text-primary-emphasis rounded-3 shadow mb-2",onClick:o[1]||(o[1]=s=>this.$emit("allLogs"))},[o[4]||(o[4]=e("i",{class:"bi bi-clock me-2"},null,-1)),l(n,{t:"Logs"})]),this.getAllJobs.length>0?(t(),r("div",P,[(t(!0),r(p,null,b(this.getAllJobs,(s,d)=>(t(),r("div",{class:"accordion-item",key:s.id},[e("h2",j,[e("button",{class:"accordion-button collapsed",type:"button","data-bs-toggle":"collapse","data-bs-target":"#collapse_"+d},[e("small",null,[e("strong",null,[s.name?(t(),r("span",B,m(s.name)+" • ",1)):f("",!0),e("samp",N,m(s.id),1)])])],8,M)]),e("div",{id:"collapse_"+d,class:"accordion-collapse collapse","data-bs-parent":"#peerJobsLogsModalAccordion"},[e("div",T,[(t(!0),r(p,null,b(s.jobs,i=>(t(),y(u,{onDelete:o[2]||(o[2]=h=>this.$emit("refresh")),onRefresh:o[3]||(o[3]=h=>this.$emit("refresh")),dropdowns:this.store.PeerScheduleJobs.dropdowns,viewOnly:!0,key:i.JobID,pjob:i},null,8,["dropdowns","pjob"]))),128))])],8,D)]))),128))])):(t(),r("div",V,[e("div",F,[e("span",O,[l(n,{t:"No active job at the moment."})])])]))])])])])])}const U=g(J,[["render",W]]);export{U as default}; diff --git a/src/static/app/dist/assets/peerJobsLogsModal-B3F-kSkv.js b/src/static/app/dist/assets/peerJobsLogsModal-7hkHiE3G.js similarity index 96% rename from src/static/app/dist/assets/peerJobsLogsModal-B3F-kSkv.js rename to src/static/app/dist/assets/peerJobsLogsModal-7hkHiE3G.js index 9bf18fd..b23afb6 100644 --- a/src/static/app/dist/assets/peerJobsLogsModal-B3F-kSkv.js +++ b/src/static/app/dist/assets/peerJobsLogsModal-7hkHiE3G.js @@ -1 +1 @@ -import{d as m}from"./dayjs.min-C4BEB1lt.js";import{_ as p,g,k as _,a,c as n,b as s,d as i,f as b,t as c,m as h,v as u,e as d,F as f,h as w,n as L}from"./index-CfPziasH.js";import{L as k}from"./localeText-CyxQ0Kz3.js";const x={name:"peerJobsLogsModal",components:{LocaleText:k},props:{configurationInfo:Object},data(){return{dataLoading:!0,data:[],logFetchTime:void 0,showLogID:!1,showJobID:!0,showSuccessJob:!0,showFailedJob:!0,showLogAmount:10}},async mounted(){await this.fetchLog()},methods:{async fetchLog(){this.dataLoading=!0,await g(`/api/getPeerScheduleJobLogs/${this.configurationInfo.Name}`,{},r=>{this.data=r.data,this.logFetchTime=m().format("YYYY-MM-DD HH:mm:ss"),this.dataLoading=!1})}},computed:{getLogs(){return this.data.filter(r=>this.showSuccessJob&&["1","true"].includes(r.Status)||this.showFailedJob&&["0","false"].includes(r.Status))},showLogs(){return this.getLogs.slice(0,this.showLogAmount)}}},y={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},v={class:"container-fluid d-flex h-100 w-100"},D={class:"m-auto mt-0 modal-dialog-centered dashboardModal",style:{width:"100%"}},S={class:"card rounded-3 shadow w-100"},I={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-0"},J={class:"mb-0"},C={class:"card-body px-4 pb-4 pt-2"},F={key:0},j={class:"mb-2 d-flex gap-3"},M={class:"d-flex gap-3 align-items-center"},V={class:"text-muted"},T={class:"form-check"},A={class:"form-check-label",for:"jobLogsShowSuccessCheck"},N={class:"badge text-success-emphasis bg-success-subtle"},U={class:"form-check"},Y={class:"form-check-label",for:"jobLogsShowFailedCheck"},B={class:"badge text-danger-emphasis bg-danger-subtle"},z={class:"d-flex gap-3 align-items-center ms-auto"},H={class:"text-muted"},$={class:"form-check"},E={class:"form-check-label",for:"jobLogsShowJobIDCheck"},G={class:"form-check"},O={class:"form-check-label",for:"jobLogsShowLogIDCheck"},P={class:"table"},R={scope:"col"},q={key:0,scope:"col"},K={key:1,scope:"col"},Q={scope:"col"},W={scope:"col"},X={style:{"font-size":"0.875rem"}},Z={scope:"row"},ss={key:0},ts={class:"text-muted"},os={key:1},es={class:"text-muted"},is={class:"d-flex gap-2"},as={key:1,class:"d-flex align-items-center flex-column"};function ns(r,t,ls,cs,l,ds){const e=_("LocaleText");return a(),n("div",y,[s("div",v,[s("div",D,[s("div",S,[s("div",I,[s("h4",J,[i(e,{t:"Jobs Logs"})]),s("button",{type:"button",class:"btn-close ms-auto",onClick:t[0]||(t[0]=o=>this.$emit("close"))})]),s("div",C,[this.dataLoading?(a(),n("div",as,t[11]||(t[11]=[s("div",{class:"spinner-border text-body",role:"status"},[s("span",{class:"visually-hidden"},"Loading...")],-1)]))):(a(),n("div",F,[s("p",null,[i(e,{t:"Updated at"}),b(" : "+c(this.logFetchTime),1)]),s("div",j,[s("button",{onClick:t[1]||(t[1]=o=>this.fetchLog()),class:"btn btn-sm rounded-3 shadow-sm text-info-emphasis bg-info-subtle border-1 border-info-subtle me-1"},[t[8]||(t[8]=s("i",{class:"bi bi-arrow-clockwise me-2"},null,-1)),i(e,{t:"Refresh"})]),s("div",M,[s("span",V,[i(e,{t:"Filter"})]),s("div",T,[h(s("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":t[2]||(t[2]=o=>this.showSuccessJob=o),id:"jobLogsShowSuccessCheck"},null,512),[[u,this.showSuccessJob]]),s("label",A,[s("span",N,[i(e,{t:"Success"})])])]),s("div",U,[h(s("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":t[3]||(t[3]=o=>this.showFailedJob=o),id:"jobLogsShowFailedCheck"},null,512),[[u,this.showFailedJob]]),s("label",Y,[s("span",B,[i(e,{t:"Failed"})])])])]),s("div",z,[s("span",H,[i(e,{t:"Display"})]),s("div",$,[h(s("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":t[4]||(t[4]=o=>l.showJobID=o),id:"jobLogsShowJobIDCheck"},null,512),[[u,l.showJobID]]),s("label",E,[i(e,{t:"Job ID"})])]),s("div",G,[h(s("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":t[5]||(t[5]=o=>l.showLogID=o),id:"jobLogsShowLogIDCheck"},null,512),[[u,l.showLogID]]),s("label",O,[i(e,{t:"Log ID"})])])])]),s("table",P,[s("thead",null,[s("tr",null,[s("th",R,[i(e,{t:"Date"})]),l.showLogID?(a(),n("th",q,[i(e,{t:"Log ID"})])):d("",!0),l.showJobID?(a(),n("th",K,[i(e,{t:"Job ID"})])):d("",!0),s("th",Q,[i(e,{t:"Status"})]),s("th",W,[i(e,{t:"Message"})])])]),s("tbody",null,[(a(!0),n(f,null,w(this.showLogs,o=>(a(),n("tr",X,[s("th",Z,c(o.LogDate),1),l.showLogID?(a(),n("td",ss,[s("samp",ts,c(o.LogID),1)])):d("",!0),l.showJobID?(a(),n("td",os,[s("samp",es,c(o.JobID),1)])):d("",!0),s("td",null,[s("span",{class:L(["badge",[o.Status==="1"?"text-success-emphasis bg-success-subtle":"text-danger-emphasis bg-danger-subtle"]])},c(o.Status==="1"?"Success":"Failed"),3)]),s("td",null,c(o.Message),1)]))),256))])]),s("div",is,[this.getLogs.length>this.showLogAmount?(a(),n("button",{key:0,onClick:t[6]||(t[6]=o=>this.showLogAmount+=20),class:"btn btn-sm rounded-3 shadow-sm text-primary-emphasis bg-primary-subtle border-1 border-primary-subtle"},t[9]||(t[9]=[s("i",{class:"bi bi-chevron-down me-2"},null,-1),b(" Show More ")]))):d("",!0),this.showLogAmount>20?(a(),n("button",{key:1,onClick:t[7]||(t[7]=o=>this.showLogAmount=20),class:"btn btn-sm rounded-3 shadow-sm text-primary-emphasis bg-primary-subtle border-1 border-primary-subtle"},t[10]||(t[10]=[s("i",{class:"bi bi-chevron-up me-2"},null,-1),b(" Collapse ")]))):d("",!0)])]))])])])])])}const bs=p(x,[["render",ns]]);export{bs as default}; +import{d as m}from"./dayjs.min-DO3nadR-.js";import{_ as p,g,k as _,a,c as n,b as s,d as i,f as b,t as c,m as h,v as u,e as d,F as f,h as w,n as L}from"./index-AzYVPyhh.js";import{L as k}from"./localeText-qJNpKS91.js";const x={name:"peerJobsLogsModal",components:{LocaleText:k},props:{configurationInfo:Object},data(){return{dataLoading:!0,data:[],logFetchTime:void 0,showLogID:!1,showJobID:!0,showSuccessJob:!0,showFailedJob:!0,showLogAmount:10}},async mounted(){await this.fetchLog()},methods:{async fetchLog(){this.dataLoading=!0,await g(`/api/getPeerScheduleJobLogs/${this.configurationInfo.Name}`,{},r=>{this.data=r.data,this.logFetchTime=m().format("YYYY-MM-DD HH:mm:ss"),this.dataLoading=!1})}},computed:{getLogs(){return this.data.filter(r=>this.showSuccessJob&&["1","true"].includes(r.Status)||this.showFailedJob&&["0","false"].includes(r.Status))},showLogs(){return this.getLogs.slice(0,this.showLogAmount)}}},y={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},v={class:"container-fluid d-flex h-100 w-100"},D={class:"m-auto mt-0 modal-dialog-centered dashboardModal",style:{width:"100%"}},S={class:"card rounded-3 shadow w-100"},I={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-0"},J={class:"mb-0"},C={class:"card-body px-4 pb-4 pt-2"},F={key:0},j={class:"mb-2 d-flex gap-3"},M={class:"d-flex gap-3 align-items-center"},V={class:"text-muted"},T={class:"form-check"},A={class:"form-check-label",for:"jobLogsShowSuccessCheck"},N={class:"badge text-success-emphasis bg-success-subtle"},U={class:"form-check"},Y={class:"form-check-label",for:"jobLogsShowFailedCheck"},B={class:"badge text-danger-emphasis bg-danger-subtle"},z={class:"d-flex gap-3 align-items-center ms-auto"},H={class:"text-muted"},$={class:"form-check"},E={class:"form-check-label",for:"jobLogsShowJobIDCheck"},G={class:"form-check"},O={class:"form-check-label",for:"jobLogsShowLogIDCheck"},P={class:"table"},R={scope:"col"},q={key:0,scope:"col"},K={key:1,scope:"col"},Q={scope:"col"},W={scope:"col"},X={style:{"font-size":"0.875rem"}},Z={scope:"row"},ss={key:0},ts={class:"text-muted"},os={key:1},es={class:"text-muted"},is={class:"d-flex gap-2"},as={key:1,class:"d-flex align-items-center flex-column"};function ns(r,t,ls,cs,l,ds){const e=_("LocaleText");return a(),n("div",y,[s("div",v,[s("div",D,[s("div",S,[s("div",I,[s("h4",J,[i(e,{t:"Jobs Logs"})]),s("button",{type:"button",class:"btn-close ms-auto",onClick:t[0]||(t[0]=o=>this.$emit("close"))})]),s("div",C,[this.dataLoading?(a(),n("div",as,t[11]||(t[11]=[s("div",{class:"spinner-border text-body",role:"status"},[s("span",{class:"visually-hidden"},"Loading...")],-1)]))):(a(),n("div",F,[s("p",null,[i(e,{t:"Updated at"}),b(" : "+c(this.logFetchTime),1)]),s("div",j,[s("button",{onClick:t[1]||(t[1]=o=>this.fetchLog()),class:"btn btn-sm rounded-3 shadow-sm text-info-emphasis bg-info-subtle border-1 border-info-subtle me-1"},[t[8]||(t[8]=s("i",{class:"bi bi-arrow-clockwise me-2"},null,-1)),i(e,{t:"Refresh"})]),s("div",M,[s("span",V,[i(e,{t:"Filter"})]),s("div",T,[h(s("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":t[2]||(t[2]=o=>this.showSuccessJob=o),id:"jobLogsShowSuccessCheck"},null,512),[[u,this.showSuccessJob]]),s("label",A,[s("span",N,[i(e,{t:"Success"})])])]),s("div",U,[h(s("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":t[3]||(t[3]=o=>this.showFailedJob=o),id:"jobLogsShowFailedCheck"},null,512),[[u,this.showFailedJob]]),s("label",Y,[s("span",B,[i(e,{t:"Failed"})])])])]),s("div",z,[s("span",H,[i(e,{t:"Display"})]),s("div",$,[h(s("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":t[4]||(t[4]=o=>l.showJobID=o),id:"jobLogsShowJobIDCheck"},null,512),[[u,l.showJobID]]),s("label",E,[i(e,{t:"Job ID"})])]),s("div",G,[h(s("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":t[5]||(t[5]=o=>l.showLogID=o),id:"jobLogsShowLogIDCheck"},null,512),[[u,l.showLogID]]),s("label",O,[i(e,{t:"Log ID"})])])])]),s("table",P,[s("thead",null,[s("tr",null,[s("th",R,[i(e,{t:"Date"})]),l.showLogID?(a(),n("th",q,[i(e,{t:"Log ID"})])):d("",!0),l.showJobID?(a(),n("th",K,[i(e,{t:"Job ID"})])):d("",!0),s("th",Q,[i(e,{t:"Status"})]),s("th",W,[i(e,{t:"Message"})])])]),s("tbody",null,[(a(!0),n(f,null,w(this.showLogs,o=>(a(),n("tr",X,[s("th",Z,c(o.LogDate),1),l.showLogID?(a(),n("td",ss,[s("samp",ts,c(o.LogID),1)])):d("",!0),l.showJobID?(a(),n("td",os,[s("samp",es,c(o.JobID),1)])):d("",!0),s("td",null,[s("span",{class:L(["badge",[o.Status==="1"?"text-success-emphasis bg-success-subtle":"text-danger-emphasis bg-danger-subtle"]])},c(o.Status==="1"?"Success":"Failed"),3)]),s("td",null,c(o.Message),1)]))),256))])]),s("div",is,[this.getLogs.length>this.showLogAmount?(a(),n("button",{key:0,onClick:t[6]||(t[6]=o=>this.showLogAmount+=20),class:"btn btn-sm rounded-3 shadow-sm text-primary-emphasis bg-primary-subtle border-1 border-primary-subtle"},t[9]||(t[9]=[s("i",{class:"bi bi-chevron-down me-2"},null,-1),b(" Show More ")]))):d("",!0),this.showLogAmount>20?(a(),n("button",{key:1,onClick:t[7]||(t[7]=o=>this.showLogAmount=20),class:"btn btn-sm rounded-3 shadow-sm text-primary-emphasis bg-primary-subtle border-1 border-primary-subtle"},t[10]||(t[10]=[s("i",{class:"bi bi-chevron-up me-2"},null,-1),b(" Collapse ")]))):d("",!0)])]))])])])])])}const bs=p(x,[["render",ns]]);export{bs as default}; diff --git a/src/static/app/dist/assets/peerList-sNMkmM1X.js b/src/static/app/dist/assets/peerList-BqyAB2cF.js similarity index 94% rename from src/static/app/dist/assets/peerList-sNMkmM1X.js rename to src/static/app/dist/assets/peerList-BqyAB2cF.js index 5a98374..84ad136 100644 --- a/src/static/app/dist/assets/peerList-sNMkmM1X.js +++ b/src/static/app/dist/assets/peerList-BqyAB2cF.js @@ -1,2 +1,2 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/peerShareLinkModal-5XXDseK9.js","assets/index-CfPziasH.js","assets/index-DFl-XeJT.css","assets/dayjs.min-C4BEB1lt.js","assets/vue-datepicker-BZlVex04.js","assets/localeText-CyxQ0Kz3.js","assets/peerShareLinkModal-ouYxVldA.css","assets/peerJobs-BLwykEew.js","assets/schedulePeerJob-DtVhPy4n.js","assets/schedulePeerJob-DPy59wup.css","assets/peerJobs-voXURBEt.css","assets/peerQRCode-GmcmuBji.js","assets/browser-CjSdxGTc.js","assets/peerQRCode-BCTrhATO.css","assets/peerConfigurationFile-CP8FspMC.js","assets/peerConfigurationFile-BFmmapnE.css","assets/peerSettings-a8GW0whb.js","assets/peerSettings-BkfvIQvk.css","assets/peerSearchBar-CdEZuAVf.js","assets/peerSearchBar-BrbvrjWX.css","assets/peerJobsAllModal-DmXg9VpA.js","assets/peerJobsLogsModal-B3F-kSkv.js","assets/editConfiguration-UEBqsx1g.js","assets/editConfiguration-Ca_IlmFH.css","assets/selectPeers-Bs51pfmN.js","assets/selectPeers-Wjnh8YUZ.css","assets/peerAddModal-BmoNcHxr.js","assets/peerAddModal-s_w1PY7H.css"])))=>i.map(i=>d[i]); -import{r as O,D as G,o as le,H as Y,x as te,q as E,a,c as v,b as e,d as i,u as k,t as w,e as $,J as ie,g as F,_ as Q,W as de,G as L,A as J,F as B,h as H,n as D,k as U,K as fe,L as ge,w as T,j as se,f as N,i as P,T as ee,M as A,N as R,O as ve,m as be,v as he,S as _e}from"./index-CfPziasH.js";import{_ as ye}from"./protocolBadge-BwyLRUKo.js";import{L as C}from"./localeText-CyxQ0Kz3.js";import{C as we,L as Se,B as $e,a as Pe,b as xe,c as Ce,p as ke,d as Oe,e as De,f as Me,P as Le,h as Ae,g as ae}from"./index-CPB-8sFq.js";import{d as Re}from"./dayjs.min-C4BEB1lt.js";const Ie={class:"row gx-2 gy-2 mb-3"},Ee={class:"col-12"},Te={class:"card rounded-3 bg-transparent",style:{height:"270px"}},Be={class:"card-header bg-transparent border-0"},Ne={class:"text-muted"},Je={class:"card-body pt-1"},Fe={class:"col-sm col-lg-6"},je={class:"card rounded-3 bg-transparent",style:{height:"270px"}},Ve={class:"card-header bg-transparent border-0 d-flex align-items-center"},Ue={class:"text-muted"},Ge={key:0,class:"text-primary fw-bold ms-auto"},Qe={class:"card-body pt-1"},ze={class:"col-sm col-lg-6"},We={class:"card rounded-3 bg-transparent",style:{height:"270px"}},qe={class:"card-header bg-transparent border-0 d-flex align-items-center"},He={class:"text-muted"},Ke={key:0,class:"text-success fw-bold ms-auto"},Ye={class:"card-body pt-1"},Ze={__name:"peerDataUsageCharts",props:{configurationPeers:Array,configurationInfo:Object},setup(o){we.register(Se,$e,Pe,xe,Ce,ke,Oe,De,Me,Le);const t=o,n=O({timestamp:[],data:[]}),r=O({timestamp:[],data:[]}),x=ie(),_=G(),u=O(void 0),b=async()=>{await F("/api/getWireguardConfigurationRealtimeTraffic",{configurationName:x.params.id},g=>{let y=Re().format("hh:mm:ss A");(g.data.sent!==0&&g.data.recv!==0||n.value.data.length>0&&r.value.data.length>0)&&(n.value.timestamp.push(y),n.value.data.push(g.data.sent),r.value.timestamp.push(y),r.value.data.push(g.data.recv))})},m=()=>{clearInterval(u.value),u.value=void 0,t.configurationInfo.Status&&(u.value=setInterval(()=>{b()},parseInt(_.Configuration.Server.dashboard_refresh_interval)))};le(()=>{m()}),Y(()=>t.configurationInfo.Status,()=>{m()}),Y(()=>_.Configuration.Server.dashboard_refresh_interval,()=>{m()}),te(()=>{clearInterval(u.value),u.value=void 0});const p=E(()=>{let g=t.configurationPeers.filter(y=>y.cumu_data+y.total_data>0);return{labels:g.map(y=>y.name?y.name:`Untitled Peer - ${y.id}`),datasets:[{label:"Total Data Usage",data:g.map(y=>y.cumu_data+y.total_data),backgroundColor:g.map(y=>"#ffc107"),tooltip:{callbacks:{label:y=>`${y.formattedValue} GB`}}}]}}),S=E(()=>({labels:[...n.value.timestamp],datasets:[{label:"Data Sent",data:[...n.value.data],fill:!1,borderColor:"#198754",backgroundColor:"#198754",tension:0}]})),M=E(()=>({labels:[...r.value.timestamp],datasets:[{label:"Data Received",data:[...r.value.data],fill:!1,borderColor:"#0d6efd",backgroundColor:"#0d6efd",tension:0}]})),l=E(()=>({responsive:!0,plugins:{legend:{display:!1}},scales:{x:{ticks:{display:!1},grid:{display:!1}},y:{ticks:{callback:(g,y)=>`${Math.round((g+Number.EPSILON)*1e3)/1e3} GB`},grid:{display:!1}}}})),c=E(()=>({responsive:!0,plugins:{legend:{display:!1},tooltip:{callbacks:{label:g=>`${g.formattedValue} MB/s`}}},scales:{x:{ticks:{display:!1},grid:{display:!0}},y:{ticks:{callback:(g,y)=>`${Math.round((g+Number.EPSILON)*1e3)/1e3} MB/s`},grid:{display:!0}}}}));return(g,y)=>(a(),v("div",Ie,[e("div",Ee,[e("div",Te,[e("div",Be,[e("small",Ne,[i(C,{t:"Peers Data Usage"})])]),e("div",Je,[i(k(Ae),{data:p.value,options:l.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["data","options"])])])]),e("div",Fe,[e("div",je,[e("div",Ve,[e("small",Ue,[i(C,{t:"Real Time Received Data Usage"})]),r.value.data.length>0?(a(),v("small",Ge,w(r.value.data[r.value.data.length-1])+" MB/s ",1)):$("",!0)]),e("div",Qe,[i(k(ae),{options:c.value,data:M.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["options","data"])])])]),e("div",ze,[e("div",We,[e("div",qe,[e("small",He,[i(C,{t:"Real Time Sent Data Usage"})]),n.value.data.length>0?(a(),v("small",Ke,w(n.value.data[n.value.data.length-1])+" MB/s ",1)):$("",!0)]),e("div",Ye,[i(k(ae),{options:c.value,data:S.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["options","data"])])])])]))}},Xe={name:"peerSearch",components:{LocaleText:C},setup(){const o=G(),t=de();return{store:o,wireguardConfigurationStore:t}},props:{configuration:Object},data(){return{sort:{status:L("Status"),name:L("Name"),allowed_ip:L("Allowed IPs"),restricted:L("Restricted")},interval:{5e3:L("5 Seconds"),1e4:L("10 Seconds"),3e4:L("30 Seconds"),6e4:L("1 Minutes")},display:{grid:L("Grid"),list:L("List")},searchString:"",searchStringTimeout:void 0,showDisplaySettings:!1,showMoreSettings:!1}},methods:{debounce(){this.searchStringTimeout?(clearTimeout(this.searchStringTimeout),this.searchStringTimeout=setTimeout(()=>{this.wireguardConfigurationStore.searchString=this.searchString},300)):this.searchStringTimeout=setTimeout(()=>{this.wireguardConfigurationStore.searchString=this.searchString},300)},updateSort(o){J("/api/updateDashboardConfigurationItem",{section:"Server",key:"dashboard_sort",value:o},t=>{t.status&&this.store.getConfiguration()})},updateRefreshInterval(o){J("/api/updateDashboardConfigurationItem",{section:"Server",key:"dashboard_refresh_interval",value:o},t=>{t.status&&this.store.getConfiguration()})},updateDisplay(o){J("/api/updateDashboardConfigurationItem",{section:"Server",key:"dashboard_peer_list_display",value:o},t=>{t.status&&this.store.getConfiguration()})},downloadAllPeer(){F(`/api/downloadAllPeers/${this.configuration.Name}`,{},o=>{o.data.forEach(t=>{t.fileName=t.fileName+".conf"}),window.wireguard.generateZipFiles(o,this.configuration.Name)})}}},et={class:"d-flex flex-column gap-2 my-4"},tt={class:"d-flex gap-2 peerSearchContainer"},st={class:"dropdown"},ot={"data-bs-toggle":"dropdown",class:"btn w-100 btn-sm text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle position-relative"},nt={class:"badge text-bg-primary ms-2"},at={class:"dropdown-menu rounded-3"},rt=["onClick"],lt={class:"ms-auto"},it={key:0,class:"bi bi-check-circle-fill"},dt={class:"dropdown"},ut={"data-bs-toggle":"dropdown",class:"btn btn-sm w-100 text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle position-relative"},ct={class:"badge text-bg-primary ms-2"},mt={class:"dropdown-menu rounded-3"},pt=["onClick"],ft={class:"ms-auto"},gt={key:0,class:"bi bi-check-circle-fill"},vt={class:"dropdown"},bt={"data-bs-toggle":"dropdown",class:"btn btn-sm w-100 text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle position-relative"},ht={class:"badge text-bg-primary ms-2"},_t={class:"dropdown-menu rounded-3"},yt=["onClick"],wt={class:"ms-auto"},St={key:0,class:"bi bi-check-circle-fill"};function $t(o,t,n,r,x,_){const u=U("LocaleText");return a(),v("div",et,[e("div",tt,[e("div",st,[e("button",ot,[t[4]||(t[4]=e("i",{class:"bi bi-sort-up me-2"},null,-1)),i(u,{t:"Sort By"}),e("span",nt,w(this.sort[r.store.Configuration.Server.dashboard_sort]),1)]),e("ul",at,[(a(!0),v(B,null,H(this.sort,(b,m)=>(a(),v("li",null,[e("button",{class:"dropdown-item d-flex align-items-center",onClick:p=>this.updateSort(m)},[e("small",null,w(b),1),e("small",lt,[r.store.Configuration.Server.dashboard_sort===m?(a(),v("i",it)):$("",!0)])],8,rt)]))),256))])]),e("div",dt,[e("button",ut,[t[5]||(t[5]=e("i",{class:"bi bi-arrow-repeat me-2"},null,-1)),i(u,{t:"Refresh Interval"}),e("span",ct,w(this.interval[r.store.Configuration.Server.dashboard_refresh_interval]),1)]),e("ul",mt,[(a(!0),v(B,null,H(this.interval,(b,m)=>(a(),v("li",null,[e("button",{class:"dropdown-item d-flex align-items-center",onClick:p=>this.updateRefreshInterval(m)},[e("small",null,w(b),1),e("small",ft,[r.store.Configuration.Server.dashboard_refresh_interval===m?(a(),v("i",gt)):$("",!0)])],8,pt)]))),256))])]),e("div",vt,[e("button",bt,[e("i",{class:D(["bi me-2","bi-"+r.store.Configuration.Server.dashboard_peer_list_display])},null,2),i(u,{t:"Display"}),e("span",ht,w(this.display[r.store.Configuration.Server.dashboard_peer_list_display]),1)]),e("ul",_t,[(a(!0),v(B,null,H(this.display,(b,m)=>(a(),v("li",null,[e("button",{class:"dropdown-item d-flex align-items-center",onClick:p=>this.updateDisplay(m)},[e("small",null,w(b),1),e("small",wt,[r.store.Configuration.Server.dashboard_peer_list_display===m?(a(),v("i",St)):$("",!0)])],8,yt)]))),256))])]),e("button",{class:"btn btn-sm text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle ms-lg-auto",onClick:t[0]||(t[0]=b=>this.$emit("search"))},[t[6]||(t[6]=e("i",{class:"bi bi-search me-2"},null,-1)),i(u,{t:"Search"})]),e("button",{class:"btn btn-sm text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle",onClick:t[1]||(t[1]=b=>this.downloadAllPeer())},[t[7]||(t[7]=e("i",{class:"bi bi-download me-2 me-lg-0 me-xl-2"},null,-1)),i(u,{t:"Download All",class:"d-sm-block d-lg-none d-xl-block"})]),e("button",{class:"btn btn-sm text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle",onClick:t[2]||(t[2]=b=>this.$emit("selectPeers"))},[t[8]||(t[8]=e("i",{class:"bi bi-check2-all me-2 me-lg-0 me-xl-2"},null,-1)),i(u,{t:"Select Peers",class:"d-sm-block d-lg-none d-xl-block"})]),e("button",{class:"btn btn-sm text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle",onClick:t[3]||(t[3]=b=>this.$emit("jobsAll")),type:"button","aria-expanded":"false"},[t[9]||(t[9]=e("i",{class:"bi bi-person-walking me-2 me-lg-0 me-xl-2"},null,-1)),i(u,{t:"Active Jobs",class:"d-sm-block d-lg-none d-xl-block"})])])])}const Pt=Q(Xe,[["render",$t],["__scopeId","data-v-c96b078a"]]);function xt(o){return fe()?(ge(o),!0):!1}function ue(o){return typeof o=="function"?o():k(o)}const ce=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Ct=Object.prototype.toString,kt=o=>Ct.call(o)==="[object Object]",K=()=>{},Ot=Dt();function Dt(){var o,t;return ce&&((o=window?.navigator)==null?void 0:o.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window?.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function V(o){var t;const n=ue(o);return(t=n?.$el)!=null?t:n}const me=ce?window:void 0;function X(...o){let t,n,r,x;if(typeof o[0]=="string"||Array.isArray(o[0])?([n,r,x]=o,t=me):[t,n,r,x]=o,!t)return K;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const _=[],u=()=>{_.forEach(S=>S()),_.length=0},b=(S,M,l,c)=>(S.addEventListener(M,l,c),()=>S.removeEventListener(M,l,c)),m=Y(()=>[V(t),ue(x)],([S,M])=>{if(u(),!S)return;const l=kt(M)?{...M}:M;_.push(...n.flatMap(c=>r.map(g=>b(S,c,g,l))))},{immediate:!0,flush:"post"}),p=()=>{m(),u()};return xt(p),p}let re=!1;function Mt(o,t,n={}){const{window:r=me,ignore:x=[],capture:_=!0,detectIframe:u=!1}=n;if(!r)return K;Ot&&!re&&(re=!0,Array.from(r.document.body.children).forEach(l=>l.addEventListener("click",K)),r.document.documentElement.addEventListener("click",K));let b=!0;const m=l=>x.some(c=>{if(typeof c=="string")return Array.from(r.document.querySelectorAll(c)).some(g=>g===l.target||l.composedPath().includes(g));{const g=V(c);return g&&(l.target===g||l.composedPath().includes(g))}}),S=[X(r,"click",l=>{const c=V(o);if(!(!c||c===l.target||l.composedPath().includes(c))){if(l.detail===0&&(b=!m(l)),!b){b=!0;return}t(l)}},{passive:!0,capture:_}),X(r,"pointerdown",l=>{const c=V(o);b=!m(l)&&!!(c&&!l.composedPath().includes(c))},{passive:!0}),u&&X(r,"blur",l=>{setTimeout(()=>{var c;const g=V(o);((c=r.document.activeElement)==null?void 0:c.tagName)==="IFRAME"&&!g?.contains(r.document.activeElement)&&t(l)},0)})].filter(Boolean);return()=>S.forEach(l=>l())}const Lt={key:0,class:"position-absolute d-block p-1 px-2 bg-body text-body rounded-3 border shadow"},At={__name:"peerSettingsDropdownTool",props:{icon:String,title:String},emits:["click"],setup(o,{emit:t}){const n=t,r=O(!1);return(x,_)=>(a(),v("a",{class:"dropdown-item text-center px-0 rounded-3 position-relative",role:"button",onMouseenter:_[0]||(_[0]=u=>r.value=!0),onMouseleave:_[1]||(_[1]=u=>r.value=!1),onClick:_[2]||(_[2]=u=>n("click"))},[e("i",{class:D(["me-auto bi",o.icon])},null,2),i(se,{name:"zoomReversed"},{default:T(()=>[r.value?(a(),v("span",Lt,[e("small",null,[i(C,{t:o.title},null,8,["t"])])])):$("",!0)]),_:1})],32))}},Rt=Q(At,[["__scopeId","data-v-d4e41a56"]]),It={name:"peerSettingsDropdown",components:{PeerSettingsDropdownTool:Rt,LocaleText:C},setup(){return{dashboardStore:G()}},props:{Peer:Object},data(){return{deleteBtnDisabled:!1,restrictBtnDisabled:!1,allowAccessBtnDisabled:!1,confirmDelete:!1}},methods:{downloadPeer(){F("/api/downloadPeer/"+this.$route.params.id,{id:this.Peer.id},o=>{if(o.status){const t=new Blob([o.data.file],{type:"text/plain"}),n=URL.createObjectURL(t),r=`${o.data.fileName}.conf`,x=document.createElement("a");x.href=n,x.download=r,x.click(),this.dashboardStore.newMessage("WGDashboard","Peer download started","success")}else this.dashboardStore.newMessage("Server",o.message,"danger")})},downloadQRCode(o){F("/api/downloadPeer/"+this.$route.params.id,{id:this.Peer.id},t=>{t.status?this.$emit(o,t.data.file):this.dashboardStore.newMessage("Server",t.message,"danger")})},deletePeer(){this.deleteBtnDisabled=!0,J(`/api/deletePeers/${this.$route.params.id}`,{peers:[this.Peer.id]},o=>{this.dashboardStore.newMessage("Server",o.message,o.status?"success":"danger"),this.$emit("refresh"),this.deleteBtnDisabled=!1})},restrictPeer(){this.restrictBtnDisabled=!0,J(`/api/restrictPeers/${this.$route.params.id}`,{peers:[this.Peer.id]},o=>{this.dashboardStore.newMessage("Server",o.message,o.status?"success":"danger"),this.$emit("refresh"),this.restrictBtnDisabled=!1})},allowAccessPeer(){this.allowAccessBtnDisabled=!0,J(`/api/allowAccessPeers/${this.$route.params.id}`,{peers:[this.Peer.id]},o=>{this.dashboardStore.newMessage("Server",o.message,o.status?"success":"danger"),this.$emit("refresh"),this.allowAccessBtnDisabled=!1})}}},Et={class:"dropdown-menu mt-2 shadow-lg d-block rounded-3",style:{"max-width":"200px"}},Tt={style:{"font-size":"0.8rem","padding-left":"var(--bs-dropdown-item-padding-x)","padding-right":"var(--bs-dropdown-item-padding-x)"}},Bt={class:"text-body d-flex"},Nt={class:"ms-auto"},Jt={key:1},Ft={class:"w-100 dropdown-item text-muted",style:{"white-space":"break-spaces","font-size":"0.7rem"}},jt={key:2},Vt={class:"d-flex",style:{"padding-left":"var(--bs-dropdown-item-padding-x)","padding-right":"var(--bs-dropdown-item-padding-x)"}},Ut={key:1,class:"confirmDelete"},Gt={style:{"white-space":"break-spaces"},class:"mb-2 d-block fw-bold"},Qt={class:"d-flex w-100 gap-2"},zt=["disabled"],Wt=["disabled"],qt={key:1};function Ht(o,t,n,r,x,_){const u=U("LocaleText"),b=U("PeerSettingsDropdownTool");return a(),v("ul",Et,[this.Peer.restricted?(a(),v("li",qt,[e("a",{class:D(["dropdown-item d-flex text-warning",{disabled:this.allowAccessBtnDisabled}]),onClick:t[10]||(t[10]=m=>this.allowAccessPeer()),role:"button"},[t[22]||(t[22]=e("i",{class:"me-auto bi bi-unlock"},null,-1)),this.allowAccessBtnDisabled?(a(),P(u,{key:1,t:"Allowing Access..."})):(a(),P(u,{key:0,t:"Allow Access"}))],2)])):(a(),v(B,{key:0},[this.confirmDelete?(a(),v("li",Ut,[e("p",Gt,[i(u,{t:"Are you sure to delete this peer?"})]),e("div",Qt,[e("button",{onClick:t[8]||(t[8]=m=>this.deletePeer()),disabled:this.deleteBtnDisabled,class:"flex-grow-1 ms-auto btn btn-sm bg-danger"},[i(u,{t:"Yes"})],8,zt),e("button",{disabled:this.deleteBtnDisabled,onClick:t[9]||(t[9]=m=>this.confirmDelete=!1),class:"flex-grow-1 btn btn-sm bg-secondary-subtle text-secondary-emphasis border border-secondary-subtle"},[i(u,{t:"No"})],8,Wt)])])):(a(),v(B,{key:0},[this.Peer.status==="running"?(a(),v(B,{key:0},[e("li",Tt,[e("span",Bt,[t[11]||(t[11]=e("i",{class:"bi bi-box-arrow-in-right"},null,-1)),e("span",Nt,w(this.Peer.endpoint),1)])]),t[12]||(t[12]=e("li",null,[e("hr",{class:"dropdown-divider"})],-1))],64)):$("",!0),this.Peer.private_key?(a(),v("li",jt,[t[13]||(t[13]=e("div",{class:"text-center text-muted"},null,-1)),e("div",Vt,[i(b,{icon:"bi-download",title:"Download",onClick:t[0]||(t[0]=m=>this.downloadPeer())}),i(b,{icon:"bi-qr-code",title:"QR Code",onClick:t[1]||(t[1]=m=>this.$emit("qrcode"))}),i(b,{icon:"bi-body-text",title:"Configuration File",onClick:t[2]||(t[2]=m=>this.$emit("configurationFile"))}),i(b,{icon:"bi-share",title:"Share Peer",onClick:t[3]||(t[3]=m=>this.$emit("share"))})])])):(a(),v("li",Jt,[e("small",Ft,[i(u,{t:"Download & QR Code is not available due to no private key set for this peer"})])])),t[20]||(t[20]=e("li",null,[e("hr",{class:"dropdown-divider"})],-1)),e("li",null,[e("a",{class:"dropdown-item d-flex",role:"button",onClick:t[4]||(t[4]=m=>this.$emit("setting"))},[t[14]||(t[14]=e("i",{class:"me-auto bi bi-pen"},null,-1)),t[15]||(t[15]=N()),i(u,{t:"Peer Settings"})])]),e("li",null,[e("a",{class:"dropdown-item d-flex",role:"button",onClick:t[5]||(t[5]=m=>this.$emit("jobs"))},[t[16]||(t[16]=e("i",{class:"me-auto bi bi-app-indicator"},null,-1)),t[17]||(t[17]=N()),i(u,{t:"Schedule Jobs"})])]),t[21]||(t[21]=e("li",null,[e("hr",{class:"dropdown-divider"})],-1)),e("li",null,[e("a",{class:D(["dropdown-item d-flex text-warning",{disabled:this.restrictBtnDisabled}]),onClick:t[6]||(t[6]=m=>this.restrictPeer()),role:"button"},[t[18]||(t[18]=e("i",{class:"me-auto bi bi-lock"},null,-1)),this.restrictBtnDisabled?(a(),P(u,{key:1,t:"Restricting..."})):(a(),P(u,{key:0,t:"Restrict Access"}))],2)]),e("li",null,[e("a",{class:D(["dropdown-item d-flex fw-bold text-danger",{disabled:this.deleteBtnDisabled}]),onClick:t[7]||(t[7]=m=>this.confirmDelete=!0),role:"button"},[t[19]||(t[19]=e("i",{class:"me-auto bi bi-trash"},null,-1)),this.deleteBtnDisabled?(a(),P(u,{key:1,t:"Deleting..."})):(a(),P(u,{key:0,t:"Delete"}))],2)])],64))],64))])}const Kt=Q(It,[["render",Ht],["__scopeId","data-v-ebeddf70"]]),Yt={name:"peer",methods:{GetLocale:L},components:{LocaleText:C,PeerSettingsDropdown:Kt},props:{Peer:Object},data(){return{}},setup(){const o=O(null),t=O(!1),n=G();return Mt(o,r=>{t.value=!1}),{target:o,subMenuOpened:t,dashboardStore:n}},computed:{getLatestHandshake(){return this.Peer.latest_handshake.includes(",")?this.Peer.latest_handshake.split(",")[0]:this.Peer.latest_handshake}}},Zt={key:0,class:"card-header bg-transparent d-flex align-items-center gap-2 border-0"},Xt={key:0,style:{"font-size":"0.8rem",color:"#28a745"},class:"d-flex align-items-center"},es={style:{"font-size":"0.8rem"},class:"ms-auto d-flex gap-2"},ts={class:"text-primary"},ss={class:"text-success"},os={key:0,class:"text-secondary"},ns={key:1,class:"border-0 card-header bg-transparent text-warning fw-bold",style:{"font-size":"0.8rem"}},as={class:"card-body pt-1",style:{"font-size":"0.9rem"}},rs={class:"text-muted"},ls={class:"d-block"},is={class:"text-muted"},ds={class:"d-block"},us={class:"d-flex align-items-end ms-auto"};function cs(o,t,n,r,x,_){const u=U("LocaleText"),b=U("PeerSettingsDropdown");return a(),v("div",{class:D(["card shadow-sm rounded-3 peerCard",{"border-warning":n.Peer.restricted}])},[e("div",null,[n.Peer.restricted?(a(),v("div",ns,[t[13]||(t[13]=e("i",{class:"bi-lock-fill me-2"},null,-1)),i(u,{t:"Access Restricted"})])):(a(),v("div",Zt,[e("div",{class:D(["dot ms-0",{active:n.Peer.status==="running"}])},null,2),r.dashboardStore.Configuration.Server.dashboard_peer_list_display==="list"&&n.Peer.status==="running"?(a(),v("div",Xt,[t[7]||(t[7]=e("i",{class:"bi bi-box-arrow-in-right me-2"},null,-1)),e("span",null,w(n.Peer.endpoint),1)])):$("",!0),e("div",es,[e("span",ts,[t[8]||(t[8]=e("i",{class:"bi bi-arrow-down"},null,-1)),e("strong",null,w((n.Peer.cumu_receive+n.Peer.total_receive).toFixed(4)),1),t[9]||(t[9]=N(" GB "))]),e("span",ss,[t[10]||(t[10]=e("i",{class:"bi bi-arrow-up"},null,-1)),e("strong",null,w((n.Peer.cumu_sent+n.Peer.total_sent).toFixed(4)),1),t[11]||(t[11]=N(" GB "))]),n.Peer.latest_handshake!=="No Handshake"?(a(),v("span",os,[t[12]||(t[12]=e("i",{class:"bi bi-arrows-angle-contract"},null,-1)),N(" "+w(_.getLatestHandshake)+" ago ",1)])):$("",!0)])]))]),e("div",as,[e("h6",null,w(n.Peer.name?n.Peer.name:_.GetLocale("Untitled Peer")),1),e("div",{class:D(["d-flex",[r.dashboardStore.Configuration.Server.dashboard_peer_list_display==="grid"?"gap-1 flex-column":"flex-row gap-3"]])},[e("div",{class:D({"d-flex gap-2 align-items-center":r.dashboardStore.Configuration.Server.dashboard_peer_list_display==="list"})},[e("small",rs,[i(u,{t:"Public Key"})]),e("small",ls,[e("samp",null,w(n.Peer.id),1)])],2),e("div",{class:D({"d-flex gap-2 align-items-center":r.dashboardStore.Configuration.Server.dashboard_peer_list_display==="list"})},[e("small",is,[i(u,{t:"Allowed IPs"})]),e("small",ds,[e("samp",null,w(n.Peer.allowed_ip),1)])],2),e("div",us,[e("div",{class:D(["ms-auto px-2 rounded-3 subMenuBtn",{active:this.subMenuOpened}])},[e("a",{role:"button",class:"text-body",onClick:t[0]||(t[0]=m=>this.subMenuOpened=!0)},t[14]||(t[14]=[e("h5",{class:"mb-0"},[e("i",{class:"bi bi-three-dots"})],-1)])),i(se,{name:"slide-fade"},{default:T(()=>[this.subMenuOpened?(a(),P(b,{key:0,onQrcode:t[1]||(t[1]=m=>this.$emit("qrcode")),onConfigurationFile:t[2]||(t[2]=m=>this.$emit("configurationFile")),onSetting:t[3]||(t[3]=m=>this.$emit("setting")),onJobs:t[4]||(t[4]=m=>this.$emit("jobs")),onRefresh:t[5]||(t[5]=m=>this.$emit("refresh")),onShare:t[6]||(t[6]=m=>this.$emit("share")),Peer:n.Peer,ref:"target"},null,8,["Peer"])):$("",!0)]),_:1})],2)])],2)])],2)}const ms=Q(Yt,[["render",cs],["__scopeId","data-v-61d5584d"]]),ps={__name:"peerListModals",props:{configurationModals:Object,configurationModalSelectedPeer:Object},emits:["refresh"],setup(o,{emit:t}){const n=t,r=A(()=>R(()=>import("./peerShareLinkModal-5XXDseK9.js"),__vite__mapDeps([0,1,2,3,4,5,6]))),x=A(()=>R(()=>import("./peerJobs-BLwykEew.js"),__vite__mapDeps([7,8,1,2,4,3,5,9,10]))),_=A(()=>R(()=>import("./peerQRCode-GmcmuBji.js"),__vite__mapDeps([11,12,5,1,2,13]))),u=A(()=>R(()=>import("./peerConfigurationFile-CP8FspMC.js"),__vite__mapDeps([14,1,2,5,12,15]))),b=A(()=>R(()=>import("./peerSettings-a8GW0whb.js"),__vite__mapDeps([16,1,2,5,17])));return(m,p)=>(a(),P(ee,{name:"zoom"},{default:T(()=>[o.configurationModals.peerSetting.modalOpen?(a(),P(k(b),{key:"PeerSettingsModal",selectedPeer:o.configurationModalSelectedPeer,onRefresh:p[0]||(p[0]=S=>n("refresh")),onClose:p[1]||(p[1]=S=>o.configurationModals.peerSetting.modalOpen=!1)},null,8,["selectedPeer"])):$("",!0),o.configurationModals.peerQRCode.modalOpen?(a(),P(k(_),{key:"PeerQRCodeModal",selectedPeer:o.configurationModalSelectedPeer,onClose:p[2]||(p[2]=S=>o.configurationModals.peerQRCode.modalOpen=!1)},null,8,["selectedPeer"])):$("",!0),o.configurationModals.peerScheduleJobs.modalOpen?(a(),P(k(x),{key:"PeerJobsModal",onRefresh:p[3]||(p[3]=S=>n("refresh")),selectedPeer:o.configurationModalSelectedPeer,onClose:p[4]||(p[4]=S=>o.configurationModals.peerScheduleJobs.modalOpen=!1)},null,8,["selectedPeer"])):$("",!0),o.configurationModals.peerShare.modalOpen?(a(),P(k(r),{key:"PeerShareLinkModal",onClose:p[5]||(p[5]=S=>{o.configurationModals.peerShare.modalOpen=!1}),selectedPeer:o.configurationModalSelectedPeer},null,8,["selectedPeer"])):$("",!0),o.configurationModals.peerConfigurationFile.modalOpen?(a(),P(k(u),{key:4,onClose:p[6]||(p[6]=S=>o.configurationModals.peerConfigurationFile.modalOpen=!1),selectedPeer:o.configurationModalSelectedPeer},null,8,["selectedPeer"])):$("",!0)]),_:1}))}},fs={style:{"margin-bottom":"20px",height:"1px"},id:"loadMore"},gs={__name:"peerIntersectionObserver",props:["peerListLength","showPeersCount"],emits:["loadMore"],setup(o,{emit:t}){const n=O(void 0),r=t;return le(()=>{n.value=new IntersectionObserver(x=>{x.forEach(_=>{_.isIntersecting&&r("loadMore")})},{rootMargin:"20px",threshold:1}),n.value.observe(document.querySelector("#loadMore"))}),te(()=>{n.value.disconnect()}),(x,_)=>(a(),v("div",fs))}},vs={class:"container-fluid"},bs={class:"d-flex align-items-sm-center flex-column flex-sm-row gap-3"},hs={class:"text-muted d-flex align-items-center gap-2"},_s={class:"mb-0"},ys={class:"d-flex align-items-center gap-3"},ws={class:"mb-0 display-4"},Ss={class:"ms-sm-auto d-flex gap-2 flex-column"},$s={class:"card rounded-3 bg-transparent"},Ps={class:"card-body py-2 d-flex align-items-center"},xs={class:"text-muted"},Cs={class:"form-check form-switch mb-0 ms-auto pe-0 me-0"},ks=["for"],Os={key:2,class:"spinner-border spinner-border-sm ms-2","aria-hidden":"true"},Ds=["disabled","id"],Ms={class:"d-flex gap-2"},Ls={class:"row mt-3 gy-2 gx-2 mb-2"},As={class:"col-12 col-lg-3"},Rs={class:"card rounded-3 bg-transparent h-100"},Is={class:"card-body py-2 d-flex flex-column justify-content-center"},Es={class:"mb-0 text-muted"},Ts={class:"col-12 col-lg-3"},Bs={class:"card rounded-3 bg-transparent h-100"},Ns={class:"card-body py-2 d-flex flex-column justify-content-center"},Js={class:"mb-0 text-muted"},Fs={style:{"word-break":"break-all"},class:"col-12 col-lg-6"},js={class:"card rounded-3 bg-transparent h-100"},Vs={class:"card-body py-2 d-flex flex-column justify-content-center"},Us={class:"mb-0 text-muted"},Gs={class:"row gx-2 gy-2 mb-2"},Qs={class:"col-12 col-lg-3"},zs={class:"card rounded-3 bg-transparent h-100"},Ws={class:"card-body d-flex"},qs={class:"mb-0 text-muted"},Hs={class:"h4"},Ks={class:"col-12 col-lg-3"},Ys={class:"card rounded-3 bg-transparent h-100"},Zs={class:"card-body d-flex"},Xs={class:"mb-0 text-muted"},eo={class:"h4"},to={class:"col-12 col-lg-3"},so={class:"card rounded-3 bg-transparent h-100"},oo={class:"card-body d-flex"},no={class:"mb-0 text-muted"},ao={class:"h4 text-primary"},ro={class:"col-12 col-lg-3"},lo={class:"card rounded-3 bg-transparent h-100"},io={class:"card-body d-flex"},uo={class:"mb-0 text-muted"},co={class:"h4 text-success"},mo={style:{"margin-bottom":"80px"}},po=20,fo={__name:"peerList",async setup(o){let t,n;const r=A(()=>R(()=>import("./peerSearchBar-CdEZuAVf.js"),__vite__mapDeps([18,1,2,5,19]))),x=A(()=>R(()=>import("./peerJobsAllModal-DmXg9VpA.js"),__vite__mapDeps([20,8,1,2,4,3,5,9]))),_=A(()=>R(()=>import("./peerJobsLogsModal-B3F-kSkv.js"),__vite__mapDeps([21,3,1,2,5]))),u=A(()=>R(()=>import("./editConfiguration-UEBqsx1g.js"),__vite__mapDeps([22,1,2,5,3,23]))),b=A(()=>R(()=>import("./selectPeers-Bs51pfmN.js"),__vite__mapDeps([24,1,2,5,25]))),m=A(()=>R(()=>import("./peerAddModal-BmoNcHxr.js"),__vite__mapDeps([26,1,2,5,27]))),p=G(),S=de(),M=ie(),l=O({}),c=O([]),g=O(!1),y=O({}),h=O({peerNew:{modalOpen:!1},peerSetting:{modalOpen:!1},peerScheduleJobs:{modalOpen:!1},peerQRCode:{modalOpen:!1},peerConfigurationFile:{modalOpen:!1},peerCreate:{modalOpen:!1},peerScheduleJobsAll:{modalOpen:!1},peerScheduleJobsLogs:{modalOpen:!1},peerShare:{modalOpen:!1},editConfiguration:{modalOpen:!1},selectPeers:{modalOpen:!1},backupRestore:{modalOpen:!1},deleteConfiguration:{modalOpen:!1},editRawConfigurationFile:{modalOpen:!1}}),Z=O(!1),I=async()=>{await F("/api/getWireguardConfigurationInfo",{configurationName:M.params.id},f=>{f.status&&(l.value=f.data.configurationInfo,c.value=f.data.configurationPeers,c.value.forEach(s=>{s.restricted=!1}),f.data.configurationRestrictedPeers.forEach(s=>{s.restricted=!0,c.value.push(s)}))})};[t,n]=ve(()=>I()),await t,n();const z=O(void 0),oe=()=>{clearInterval(z.value),z.value=setInterval(async()=>{await I()},parseInt(p.Configuration.Server.dashboard_refresh_interval))};oe(),te(()=>{clearInterval(z.value),z.value=void 0}),Y(()=>p.Configuration.Server.dashboard_refresh_interval,()=>{oe()});const pe=async()=>{g.value=!0,await F("/api/toggleWireguardConfiguration",{configurationName:l.value.Name},f=>{f.status?p.newMessage("Server",`${l.value.Name} ${f.data?"is on":"is off"}`,"success"):p.newMessage("Server",f.message,"danger"),S.Configurations.find(s=>s.Name===l.value.Name).Status=f.data,l.value.Status=f.data,g.value=!1})},W=E(()=>({connectedPeers:c.value.filter(f=>f.status==="running").length,totalUsage:c.value.length>0?c.value.filter(f=>!f.restricted).map(f=>f.total_data+f.cumu_data).reduce((f,s)=>f+s,0).toFixed(4):0,totalReceive:c.value.length>0?c.value.filter(f=>!f.restricted).map(f=>f.total_receive+f.cumu_receive).reduce((f,s)=>f+s,0).toFixed(4):0,totalSent:c.value.length>0?c.value.filter(f=>!f.restricted).map(f=>f.total_sent+f.cumu_sent).reduce((f,s)=>f+s,0).toFixed(4):0})),q=O(10),ne=E(()=>{const f=S.searchString?c.value.filter(s=>s.name.includes(S.searchString)||s.id.includes(S.searchString)||s.allowed_ip.includes(S.searchString)):c.value;return p.Configuration.Server.dashboard_sort==="restricted"?f.sort((s,d)=>s[p.Configuration.Server.dashboard_sort]d[p.Configuration.Server.dashboard_sort]?-1:0).slice(0,q.value):f.sort((s,d)=>s[p.Configuration.Server.dashboard_sort]d[p.Configuration.Server.dashboard_sort]?1:0).slice(0,q.value)});return(f,s)=>(a(),v("div",vs,[e("div",bs,[e("div",null,[e("div",hs,[e("h5",_s,[i(ye,{protocol:l.value.Protocol},null,8,["protocol"])])]),e("div",ys,[e("h1",ws,[e("samp",null,w(l.value.Name),1)])])]),e("div",Ss,[e("div",$s,[e("div",Ps,[e("small",xs,[i(C,{t:"Status"})]),e("div",{class:D(["dot ms-2",{active:l.value.Status}])},null,2),e("div",Cs,[e("label",{class:"form-check-label",style:{cursor:"pointer"},for:"switch"+l.value.id},[l.value.Status&&!g.value?(a(),P(C,{key:0,t:"On"})):!l.value.Status&&!g.value?(a(),P(C,{key:1,t:"Off"})):$("",!0),g.value?(a(),v("span",Os)):$("",!0)],8,ks),be(e("input",{class:"form-check-input",style:{cursor:"pointer"},disabled:g.value,type:"checkbox",role:"switch",id:"switch"+l.value.id,onChange:s[0]||(s[0]=d=>pe()),"onUpdate:modelValue":s[1]||(s[1]=d=>l.value.Status=d)},null,40,Ds),[[he,l.value.Status]])])])]),e("div",Ms,[e("a",{role:"button",onClick:s[2]||(s[2]=d=>h.value.peerNew.modalOpen=!0),class:"titleBtn py-2 text-decoration-none btn text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle"},[s[29]||(s[29]=e("i",{class:"bi bi-plus-circle me-2"},null,-1)),i(C,{t:"Peer"})]),e("button",{class:"titleBtn py-2 text-decoration-none btn text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle",onClick:s[3]||(s[3]=d=>h.value.editConfiguration.modalOpen=!0),type:"button","aria-expanded":"false"},[s[30]||(s[30]=e("i",{class:"bi bi-gear-fill me-2"},null,-1)),i(C,{t:"Configuration Settings"})])])])]),s[35]||(s[35]=e("hr",null,null,-1)),e("div",Ls,[e("div",As,[e("div",Rs,[e("div",Is,[e("p",Es,[e("small",null,[i(C,{t:"Address"})])]),N(" "+w(l.value.Address),1)])])]),e("div",Ts,[e("div",Bs,[e("div",Ns,[e("p",Js,[e("small",null,[i(C,{t:"Listen Port"})])]),N(" "+w(l.value.ListenPort),1)])])]),e("div",Fs,[e("div",js,[e("div",Vs,[e("p",Us,[e("small",null,[i(C,{t:"Public Key"})])]),e("samp",null,w(l.value.PublicKey),1)])])])]),e("div",Gs,[e("div",Qs,[e("div",zs,[e("div",Ws,[e("div",null,[e("p",qs,[e("small",null,[i(C,{t:"Connected Peers"})])]),e("strong",Hs,w(W.value.connectedPeers)+" / "+w(c.value.length),1)]),s[31]||(s[31]=e("i",{class:"bi bi-ethernet ms-auto h2 text-muted"},null,-1))])])]),e("div",Ks,[e("div",Ys,[e("div",Zs,[e("div",null,[e("p",Xs,[e("small",null,[i(C,{t:"Total Usage"})])]),e("strong",eo,w(W.value.totalUsage)+" GB",1)]),s[32]||(s[32]=e("i",{class:"bi bi-arrow-down-up ms-auto h2 text-muted"},null,-1))])])]),e("div",to,[e("div",so,[e("div",oo,[e("div",null,[e("p",no,[e("small",null,[i(C,{t:"Total Received"})])]),e("strong",ao,w(W.value.totalReceive)+" GB",1)]),s[33]||(s[33]=e("i",{class:"bi bi-arrow-down ms-auto h2 text-muted"},null,-1))])])]),e("div",ro,[e("div",lo,[e("div",io,[e("div",null,[e("p",uo,[e("small",null,[i(C,{t:"Total Sent"})])]),e("strong",co,w(W.value.totalSent)+" GB",1)]),s[34]||(s[34]=e("i",{class:"bi bi-arrow-up ms-auto h2 text-muted"},null,-1))])])])]),i(Ze,{configurationPeers:c.value,configurationInfo:l.value},null,8,["configurationPeers","configurationInfo"]),s[36]||(s[36]=e("hr",null,null,-1)),e("div",mo,[c.value.length>0?(a(),P(Pt,{key:0,onSearch:s[4]||(s[4]=d=>Z.value=!0),onJobsAll:s[5]||(s[5]=d=>h.value.peerScheduleJobsAll.modalOpen=!0),onJobLogs:s[6]||(s[6]=d=>h.value.peerScheduleJobsLogs.modalOpen=!0),onEditConfiguration:s[7]||(s[7]=d=>h.value.editConfiguration.modalOpen=!0),onSelectPeers:s[8]||(s[8]=d=>h.value.selectPeers.modalOpen=!0),onBackupRestore:s[9]||(s[9]=d=>h.value.backupRestore.modalOpen=!0),onDeleteConfiguration:s[10]||(s[10]=d=>h.value.deleteConfiguration.modalOpen=!0),configuration:l.value},null,8,["configuration"])):$("",!0),i(ee,{name:"peerList",tag:"div",class:"row gx-2 gy-2 z-0 position-relative"},{default:T(()=>[(a(!0),v(B,null,H(ne.value,d=>(a(),v("div",{class:D(["col-12",{"col-lg-6 col-xl-4":k(p).Configuration.Server.dashboard_peer_list_display==="grid"}]),key:d.id},[i(ms,{Peer:d,onShare:j=>{h.value.peerShare.modalOpen=!0,y.value=d},onRefresh:s[11]||(s[11]=j=>I()),onJobs:j=>{h.value.peerScheduleJobs.modalOpen=!0,y.value=d},onSetting:j=>{h.value.peerSetting.modalOpen=!0,y.value=d},onQrcode:j=>{y.value=d,h.value.peerQRCode.modalOpen=!0},onConfigurationFile:j=>{y.value=d,h.value.peerConfigurationFile.modalOpen=!0}},null,8,["Peer","onShare","onJobs","onSetting","onQrcode","onConfigurationFile"])],2))),128))]),_:1})]),i(se,{name:"slideUp"},{default:T(()=>[Z.value?(a(),P(k(r),{key:0,onClose:s[12]||(s[12]=d=>Z.value=!1)})):$("",!0)]),_:1}),i(ps,{configurationModals:h.value,configurationModalSelectedPeer:y.value,onRefresh:s[13]||(s[13]=d=>I())},null,8,["configurationModals","configurationModalSelectedPeer"]),i(ee,{name:"zoom"},{default:T(()=>[(a(),P(_e,{key:"PeerAddModal"},{default:T(()=>[h.value.peerNew.modalOpen?(a(),P(k(m),{key:0,onClose:s[14]||(s[14]=d=>h.value.peerNew.modalOpen=!1),onAddedPeers:s[15]||(s[15]=d=>{h.value.peerNew.modalOpen=!1,I()})})):$("",!0)]),_:1})),h.value.peerScheduleJobsAll.modalOpen?(a(),P(k(x),{key:"PeerJobsAllModal",onRefresh:s[16]||(s[16]=d=>I()),onAllLogs:s[17]||(s[17]=d=>h.value.peerScheduleJobsLogs.modalOpen=!0),onClose:s[18]||(s[18]=d=>h.value.peerScheduleJobsAll.modalOpen=!1),configurationPeers:c.value},null,8,["configurationPeers"])):$("",!0),h.value.peerScheduleJobsLogs.modalOpen?(a(),P(k(_),{key:"PeerJobsLogsModal",onClose:s[19]||(s[19]=d=>h.value.peerScheduleJobsLogs.modalOpen=!1),configurationInfo:l.value},null,8,["configurationInfo"])):$("",!0),h.value.editConfiguration.modalOpen?(a(),P(k(u),{key:"EditConfigurationModal",onEditRaw:s[20]||(s[20]=d=>h.value.editRawConfigurationFile.modalOpen=!0),onClose:s[21]||(s[21]=d=>h.value.editConfiguration.modalOpen=!1),onDataChanged:s[22]||(s[22]=d=>l.value=d),onRefresh:s[23]||(s[23]=d=>I()),onBackupRestore:s[24]||(s[24]=d=>h.value.backupRestore.modalOpen=!0),onDeleteConfiguration:s[25]||(s[25]=d=>h.value.deleteConfiguration.modalOpen=!0),configurationInfo:l.value},null,8,["configurationInfo"])):$("",!0),h.value.selectPeers.modalOpen?(a(),P(k(b),{key:3,onRefresh:s[26]||(s[26]=d=>I()),configurationPeers:c.value,onClose:s[27]||(s[27]=d=>h.value.selectPeers.modalOpen=!1)},null,8,["configurationPeers"])):$("",!0)]),_:1}),i(gs,{showPeersCount:q.value,peerListLength:ne.value.length,onLoadMore:s[28]||(s[28]=d=>q.value+=po)},null,8,["showPeersCount","peerListLength"])]))}},yo=Q(fo,[["__scopeId","data-v-4fe6960d"]]);export{yo as default}; +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/peerShareLinkModal-DKEiBJ_g.js","assets/index-AzYVPyhh.js","assets/index-DFl-XeJT.css","assets/dayjs.min-DO3nadR-.js","assets/vue-datepicker-Co-zpMN6.js","assets/localeText-qJNpKS91.js","assets/peerShareLinkModal-ouYxVldA.css","assets/peerJobs-OIcsbyz2.js","assets/schedulePeerJob-Cy0v4heL.js","assets/schedulePeerJob-DPy59wup.css","assets/peerJobs-voXURBEt.css","assets/peerQRCode-DiLT87Op.js","assets/browser-CjSdxGTc.js","assets/peerQRCode-BCTrhATO.css","assets/peerConfigurationFile-D_jhzEId.js","assets/peerConfigurationFile-BFmmapnE.css","assets/peerSettings-ByC23ho9.js","assets/peerSettings-BkfvIQvk.css","assets/peerSearchBar-BEWVShK6.js","assets/peerSearchBar-BrbvrjWX.css","assets/peerJobsAllModal-Ca-jbk3P.js","assets/peerJobsLogsModal-7hkHiE3G.js","assets/editConfiguration-64y8oZmp.js","assets/editConfiguration-Ca_IlmFH.css","assets/selectPeers-C_td7K2S.js","assets/selectPeers-Wjnh8YUZ.css","assets/peerAddModal-BaPKy6IQ.js","assets/peerAddModal-s_w1PY7H.css"])))=>i.map(i=>d[i]); +import{r as O,D as G,o as le,H as Y,x as te,q as E,a,c as v,b as e,d as i,u as k,t as w,e as $,J as ie,g as F,_ as Q,W as de,G as L,A as J,F as B,h as H,n as D,k as U,K as fe,L as ge,w as T,j as se,f as N,i as P,T as ee,M as A,N as R,O as ve,m as be,v as he,S as _e}from"./index-AzYVPyhh.js";import{_ as ye}from"./protocolBadge-Cbmuyguj.js";import{L as C}from"./localeText-qJNpKS91.js";import{C as we,L as Se,B as $e,a as Pe,b as xe,c as Ce,p as ke,d as Oe,e as De,f as Me,P as Le,h as Ae,g as ae}from"./index-DuEkGU1e.js";import{d as Re}from"./dayjs.min-DO3nadR-.js";const Ie={class:"row gx-2 gy-2 mb-3"},Ee={class:"col-12"},Te={class:"card rounded-3 bg-transparent",style:{height:"270px"}},Be={class:"card-header bg-transparent border-0"},Ne={class:"text-muted"},Je={class:"card-body pt-1"},Fe={class:"col-sm col-lg-6"},je={class:"card rounded-3 bg-transparent",style:{height:"270px"}},Ve={class:"card-header bg-transparent border-0 d-flex align-items-center"},Ue={class:"text-muted"},Ge={key:0,class:"text-primary fw-bold ms-auto"},Qe={class:"card-body pt-1"},ze={class:"col-sm col-lg-6"},We={class:"card rounded-3 bg-transparent",style:{height:"270px"}},qe={class:"card-header bg-transparent border-0 d-flex align-items-center"},He={class:"text-muted"},Ke={key:0,class:"text-success fw-bold ms-auto"},Ye={class:"card-body pt-1"},Ze={__name:"peerDataUsageCharts",props:{configurationPeers:Array,configurationInfo:Object},setup(o){we.register(Se,$e,Pe,xe,Ce,ke,Oe,De,Me,Le);const t=o,n=O({timestamp:[],data:[]}),r=O({timestamp:[],data:[]}),x=ie(),_=G(),u=O(void 0),b=async()=>{await F("/api/getWireguardConfigurationRealtimeTraffic",{configurationName:x.params.id},g=>{let y=Re().format("hh:mm:ss A");(g.data.sent!==0&&g.data.recv!==0||n.value.data.length>0&&r.value.data.length>0)&&(n.value.timestamp.push(y),n.value.data.push(g.data.sent),r.value.timestamp.push(y),r.value.data.push(g.data.recv))})},m=()=>{clearInterval(u.value),u.value=void 0,t.configurationInfo.Status&&(u.value=setInterval(()=>{b()},parseInt(_.Configuration.Server.dashboard_refresh_interval)))};le(()=>{m()}),Y(()=>t.configurationInfo.Status,()=>{m()}),Y(()=>_.Configuration.Server.dashboard_refresh_interval,()=>{m()}),te(()=>{clearInterval(u.value),u.value=void 0});const p=E(()=>{let g=t.configurationPeers.filter(y=>y.cumu_data+y.total_data>0);return{labels:g.map(y=>y.name?y.name:`Untitled Peer - ${y.id}`),datasets:[{label:"Total Data Usage",data:g.map(y=>y.cumu_data+y.total_data),backgroundColor:g.map(y=>"#ffc107"),tooltip:{callbacks:{label:y=>`${y.formattedValue} GB`}}}]}}),S=E(()=>({labels:[...n.value.timestamp],datasets:[{label:"Data Sent",data:[...n.value.data],fill:!1,borderColor:"#198754",backgroundColor:"#198754",tension:0}]})),M=E(()=>({labels:[...r.value.timestamp],datasets:[{label:"Data Received",data:[...r.value.data],fill:!1,borderColor:"#0d6efd",backgroundColor:"#0d6efd",tension:0}]})),l=E(()=>({responsive:!0,plugins:{legend:{display:!1}},scales:{x:{ticks:{display:!1},grid:{display:!1}},y:{ticks:{callback:(g,y)=>`${Math.round((g+Number.EPSILON)*1e3)/1e3} GB`},grid:{display:!1}}}})),c=E(()=>({responsive:!0,plugins:{legend:{display:!1},tooltip:{callbacks:{label:g=>`${g.formattedValue} MB/s`}}},scales:{x:{ticks:{display:!1},grid:{display:!0}},y:{ticks:{callback:(g,y)=>`${Math.round((g+Number.EPSILON)*1e3)/1e3} MB/s`},grid:{display:!0}}}}));return(g,y)=>(a(),v("div",Ie,[e("div",Ee,[e("div",Te,[e("div",Be,[e("small",Ne,[i(C,{t:"Peers Data Usage"})])]),e("div",Je,[i(k(Ae),{data:p.value,options:l.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["data","options"])])])]),e("div",Fe,[e("div",je,[e("div",Ve,[e("small",Ue,[i(C,{t:"Real Time Received Data Usage"})]),r.value.data.length>0?(a(),v("small",Ge,w(r.value.data[r.value.data.length-1])+" MB/s ",1)):$("",!0)]),e("div",Qe,[i(k(ae),{options:c.value,data:M.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["options","data"])])])]),e("div",ze,[e("div",We,[e("div",qe,[e("small",He,[i(C,{t:"Real Time Sent Data Usage"})]),n.value.data.length>0?(a(),v("small",Ke,w(n.value.data[n.value.data.length-1])+" MB/s ",1)):$("",!0)]),e("div",Ye,[i(k(ae),{options:c.value,data:S.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["options","data"])])])])]))}},Xe={name:"peerSearch",components:{LocaleText:C},setup(){const o=G(),t=de();return{store:o,wireguardConfigurationStore:t}},props:{configuration:Object},data(){return{sort:{status:L("Status"),name:L("Name"),allowed_ip:L("Allowed IPs"),restricted:L("Restricted")},interval:{5e3:L("5 Seconds"),1e4:L("10 Seconds"),3e4:L("30 Seconds"),6e4:L("1 Minutes")},display:{grid:L("Grid"),list:L("List")},searchString:"",searchStringTimeout:void 0,showDisplaySettings:!1,showMoreSettings:!1}},methods:{debounce(){this.searchStringTimeout?(clearTimeout(this.searchStringTimeout),this.searchStringTimeout=setTimeout(()=>{this.wireguardConfigurationStore.searchString=this.searchString},300)):this.searchStringTimeout=setTimeout(()=>{this.wireguardConfigurationStore.searchString=this.searchString},300)},updateSort(o){J("/api/updateDashboardConfigurationItem",{section:"Server",key:"dashboard_sort",value:o},t=>{t.status&&this.store.getConfiguration()})},updateRefreshInterval(o){J("/api/updateDashboardConfigurationItem",{section:"Server",key:"dashboard_refresh_interval",value:o},t=>{t.status&&this.store.getConfiguration()})},updateDisplay(o){J("/api/updateDashboardConfigurationItem",{section:"Server",key:"dashboard_peer_list_display",value:o},t=>{t.status&&this.store.getConfiguration()})},downloadAllPeer(){F(`/api/downloadAllPeers/${this.configuration.Name}`,{},o=>{o.data.forEach(t=>{t.fileName=t.fileName+".conf"}),window.wireguard.generateZipFiles(o,this.configuration.Name)})}}},et={class:"d-flex flex-column gap-2 my-4"},tt={class:"d-flex gap-2 peerSearchContainer"},st={class:"dropdown"},ot={"data-bs-toggle":"dropdown",class:"btn w-100 btn-sm text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle position-relative"},nt={class:"badge text-bg-primary ms-2"},at={class:"dropdown-menu rounded-3"},rt=["onClick"],lt={class:"ms-auto"},it={key:0,class:"bi bi-check-circle-fill"},dt={class:"dropdown"},ut={"data-bs-toggle":"dropdown",class:"btn btn-sm w-100 text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle position-relative"},ct={class:"badge text-bg-primary ms-2"},mt={class:"dropdown-menu rounded-3"},pt=["onClick"],ft={class:"ms-auto"},gt={key:0,class:"bi bi-check-circle-fill"},vt={class:"dropdown"},bt={"data-bs-toggle":"dropdown",class:"btn btn-sm w-100 text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle position-relative"},ht={class:"badge text-bg-primary ms-2"},_t={class:"dropdown-menu rounded-3"},yt=["onClick"],wt={class:"ms-auto"},St={key:0,class:"bi bi-check-circle-fill"};function $t(o,t,n,r,x,_){const u=U("LocaleText");return a(),v("div",et,[e("div",tt,[e("div",st,[e("button",ot,[t[4]||(t[4]=e("i",{class:"bi bi-sort-up me-2"},null,-1)),i(u,{t:"Sort By"}),e("span",nt,w(this.sort[r.store.Configuration.Server.dashboard_sort]),1)]),e("ul",at,[(a(!0),v(B,null,H(this.sort,(b,m)=>(a(),v("li",null,[e("button",{class:"dropdown-item d-flex align-items-center",onClick:p=>this.updateSort(m)},[e("small",null,w(b),1),e("small",lt,[r.store.Configuration.Server.dashboard_sort===m?(a(),v("i",it)):$("",!0)])],8,rt)]))),256))])]),e("div",dt,[e("button",ut,[t[5]||(t[5]=e("i",{class:"bi bi-arrow-repeat me-2"},null,-1)),i(u,{t:"Refresh Interval"}),e("span",ct,w(this.interval[r.store.Configuration.Server.dashboard_refresh_interval]),1)]),e("ul",mt,[(a(!0),v(B,null,H(this.interval,(b,m)=>(a(),v("li",null,[e("button",{class:"dropdown-item d-flex align-items-center",onClick:p=>this.updateRefreshInterval(m)},[e("small",null,w(b),1),e("small",ft,[r.store.Configuration.Server.dashboard_refresh_interval===m?(a(),v("i",gt)):$("",!0)])],8,pt)]))),256))])]),e("div",vt,[e("button",bt,[e("i",{class:D(["bi me-2","bi-"+r.store.Configuration.Server.dashboard_peer_list_display])},null,2),i(u,{t:"Display"}),e("span",ht,w(this.display[r.store.Configuration.Server.dashboard_peer_list_display]),1)]),e("ul",_t,[(a(!0),v(B,null,H(this.display,(b,m)=>(a(),v("li",null,[e("button",{class:"dropdown-item d-flex align-items-center",onClick:p=>this.updateDisplay(m)},[e("small",null,w(b),1),e("small",wt,[r.store.Configuration.Server.dashboard_peer_list_display===m?(a(),v("i",St)):$("",!0)])],8,yt)]))),256))])]),e("button",{class:"btn btn-sm text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle ms-lg-auto",onClick:t[0]||(t[0]=b=>this.$emit("search"))},[t[6]||(t[6]=e("i",{class:"bi bi-search me-2"},null,-1)),i(u,{t:"Search"})]),e("button",{class:"btn btn-sm text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle",onClick:t[1]||(t[1]=b=>this.downloadAllPeer())},[t[7]||(t[7]=e("i",{class:"bi bi-download me-2 me-lg-0 me-xl-2"},null,-1)),i(u,{t:"Download All",class:"d-sm-block d-lg-none d-xl-block"})]),e("button",{class:"btn btn-sm text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle",onClick:t[2]||(t[2]=b=>this.$emit("selectPeers"))},[t[8]||(t[8]=e("i",{class:"bi bi-check2-all me-2 me-lg-0 me-xl-2"},null,-1)),i(u,{t:"Select Peers",class:"d-sm-block d-lg-none d-xl-block"})]),e("button",{class:"btn btn-sm text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle",onClick:t[3]||(t[3]=b=>this.$emit("jobsAll")),type:"button","aria-expanded":"false"},[t[9]||(t[9]=e("i",{class:"bi bi-person-walking me-2 me-lg-0 me-xl-2"},null,-1)),i(u,{t:"Active Jobs",class:"d-sm-block d-lg-none d-xl-block"})])])])}const Pt=Q(Xe,[["render",$t],["__scopeId","data-v-c96b078a"]]);function xt(o){return fe()?(ge(o),!0):!1}function ue(o){return typeof o=="function"?o():k(o)}const ce=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Ct=Object.prototype.toString,kt=o=>Ct.call(o)==="[object Object]",K=()=>{},Ot=Dt();function Dt(){var o,t;return ce&&((o=window?.navigator)==null?void 0:o.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window?.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function V(o){var t;const n=ue(o);return(t=n?.$el)!=null?t:n}const me=ce?window:void 0;function X(...o){let t,n,r,x;if(typeof o[0]=="string"||Array.isArray(o[0])?([n,r,x]=o,t=me):[t,n,r,x]=o,!t)return K;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const _=[],u=()=>{_.forEach(S=>S()),_.length=0},b=(S,M,l,c)=>(S.addEventListener(M,l,c),()=>S.removeEventListener(M,l,c)),m=Y(()=>[V(t),ue(x)],([S,M])=>{if(u(),!S)return;const l=kt(M)?{...M}:M;_.push(...n.flatMap(c=>r.map(g=>b(S,c,g,l))))},{immediate:!0,flush:"post"}),p=()=>{m(),u()};return xt(p),p}let re=!1;function Mt(o,t,n={}){const{window:r=me,ignore:x=[],capture:_=!0,detectIframe:u=!1}=n;if(!r)return K;Ot&&!re&&(re=!0,Array.from(r.document.body.children).forEach(l=>l.addEventListener("click",K)),r.document.documentElement.addEventListener("click",K));let b=!0;const m=l=>x.some(c=>{if(typeof c=="string")return Array.from(r.document.querySelectorAll(c)).some(g=>g===l.target||l.composedPath().includes(g));{const g=V(c);return g&&(l.target===g||l.composedPath().includes(g))}}),S=[X(r,"click",l=>{const c=V(o);if(!(!c||c===l.target||l.composedPath().includes(c))){if(l.detail===0&&(b=!m(l)),!b){b=!0;return}t(l)}},{passive:!0,capture:_}),X(r,"pointerdown",l=>{const c=V(o);b=!m(l)&&!!(c&&!l.composedPath().includes(c))},{passive:!0}),u&&X(r,"blur",l=>{setTimeout(()=>{var c;const g=V(o);((c=r.document.activeElement)==null?void 0:c.tagName)==="IFRAME"&&!g?.contains(r.document.activeElement)&&t(l)},0)})].filter(Boolean);return()=>S.forEach(l=>l())}const Lt={key:0,class:"position-absolute d-block p-1 px-2 bg-body text-body rounded-3 border shadow"},At={__name:"peerSettingsDropdownTool",props:{icon:String,title:String},emits:["click"],setup(o,{emit:t}){const n=t,r=O(!1);return(x,_)=>(a(),v("a",{class:"dropdown-item text-center px-0 rounded-3 position-relative",role:"button",onMouseenter:_[0]||(_[0]=u=>r.value=!0),onMouseleave:_[1]||(_[1]=u=>r.value=!1),onClick:_[2]||(_[2]=u=>n("click"))},[e("i",{class:D(["me-auto bi",o.icon])},null,2),i(se,{name:"zoomReversed"},{default:T(()=>[r.value?(a(),v("span",Lt,[e("small",null,[i(C,{t:o.title},null,8,["t"])])])):$("",!0)]),_:1})],32))}},Rt=Q(At,[["__scopeId","data-v-d4e41a56"]]),It={name:"peerSettingsDropdown",components:{PeerSettingsDropdownTool:Rt,LocaleText:C},setup(){return{dashboardStore:G()}},props:{Peer:Object},data(){return{deleteBtnDisabled:!1,restrictBtnDisabled:!1,allowAccessBtnDisabled:!1,confirmDelete:!1}},methods:{downloadPeer(){F("/api/downloadPeer/"+this.$route.params.id,{id:this.Peer.id},o=>{if(o.status){const t=new Blob([o.data.file],{type:"text/plain"}),n=URL.createObjectURL(t),r=`${o.data.fileName}.conf`,x=document.createElement("a");x.href=n,x.download=r,x.click(),this.dashboardStore.newMessage("WGDashboard","Peer download started","success")}else this.dashboardStore.newMessage("Server",o.message,"danger")})},downloadQRCode(o){F("/api/downloadPeer/"+this.$route.params.id,{id:this.Peer.id},t=>{t.status?this.$emit(o,t.data.file):this.dashboardStore.newMessage("Server",t.message,"danger")})},deletePeer(){this.deleteBtnDisabled=!0,J(`/api/deletePeers/${this.$route.params.id}`,{peers:[this.Peer.id]},o=>{this.dashboardStore.newMessage("Server",o.message,o.status?"success":"danger"),this.$emit("refresh"),this.deleteBtnDisabled=!1})},restrictPeer(){this.restrictBtnDisabled=!0,J(`/api/restrictPeers/${this.$route.params.id}`,{peers:[this.Peer.id]},o=>{this.dashboardStore.newMessage("Server",o.message,o.status?"success":"danger"),this.$emit("refresh"),this.restrictBtnDisabled=!1})},allowAccessPeer(){this.allowAccessBtnDisabled=!0,J(`/api/allowAccessPeers/${this.$route.params.id}`,{peers:[this.Peer.id]},o=>{this.dashboardStore.newMessage("Server",o.message,o.status?"success":"danger"),this.$emit("refresh"),this.allowAccessBtnDisabled=!1})}}},Et={class:"dropdown-menu mt-2 shadow-lg d-block rounded-3",style:{"max-width":"200px"}},Tt={style:{"font-size":"0.8rem","padding-left":"var(--bs-dropdown-item-padding-x)","padding-right":"var(--bs-dropdown-item-padding-x)"}},Bt={class:"text-body d-flex"},Nt={class:"ms-auto"},Jt={key:1},Ft={class:"w-100 dropdown-item text-muted",style:{"white-space":"break-spaces","font-size":"0.7rem"}},jt={key:2},Vt={class:"d-flex",style:{"padding-left":"var(--bs-dropdown-item-padding-x)","padding-right":"var(--bs-dropdown-item-padding-x)"}},Ut={key:1,class:"confirmDelete"},Gt={style:{"white-space":"break-spaces"},class:"mb-2 d-block fw-bold"},Qt={class:"d-flex w-100 gap-2"},zt=["disabled"],Wt=["disabled"],qt={key:1};function Ht(o,t,n,r,x,_){const u=U("LocaleText"),b=U("PeerSettingsDropdownTool");return a(),v("ul",Et,[this.Peer.restricted?(a(),v("li",qt,[e("a",{class:D(["dropdown-item d-flex text-warning",{disabled:this.allowAccessBtnDisabled}]),onClick:t[10]||(t[10]=m=>this.allowAccessPeer()),role:"button"},[t[22]||(t[22]=e("i",{class:"me-auto bi bi-unlock"},null,-1)),this.allowAccessBtnDisabled?(a(),P(u,{key:1,t:"Allowing Access..."})):(a(),P(u,{key:0,t:"Allow Access"}))],2)])):(a(),v(B,{key:0},[this.confirmDelete?(a(),v("li",Ut,[e("p",Gt,[i(u,{t:"Are you sure to delete this peer?"})]),e("div",Qt,[e("button",{onClick:t[8]||(t[8]=m=>this.deletePeer()),disabled:this.deleteBtnDisabled,class:"flex-grow-1 ms-auto btn btn-sm bg-danger"},[i(u,{t:"Yes"})],8,zt),e("button",{disabled:this.deleteBtnDisabled,onClick:t[9]||(t[9]=m=>this.confirmDelete=!1),class:"flex-grow-1 btn btn-sm bg-secondary-subtle text-secondary-emphasis border border-secondary-subtle"},[i(u,{t:"No"})],8,Wt)])])):(a(),v(B,{key:0},[this.Peer.status==="running"?(a(),v(B,{key:0},[e("li",Tt,[e("span",Bt,[t[11]||(t[11]=e("i",{class:"bi bi-box-arrow-in-right"},null,-1)),e("span",Nt,w(this.Peer.endpoint),1)])]),t[12]||(t[12]=e("li",null,[e("hr",{class:"dropdown-divider"})],-1))],64)):$("",!0),this.Peer.private_key?(a(),v("li",jt,[t[13]||(t[13]=e("div",{class:"text-center text-muted"},null,-1)),e("div",Vt,[i(b,{icon:"bi-download",title:"Download",onClick:t[0]||(t[0]=m=>this.downloadPeer())}),i(b,{icon:"bi-qr-code",title:"QR Code",onClick:t[1]||(t[1]=m=>this.$emit("qrcode"))}),i(b,{icon:"bi-body-text",title:"Configuration File",onClick:t[2]||(t[2]=m=>this.$emit("configurationFile"))}),i(b,{icon:"bi-share",title:"Share Peer",onClick:t[3]||(t[3]=m=>this.$emit("share"))})])])):(a(),v("li",Jt,[e("small",Ft,[i(u,{t:"Download & QR Code is not available due to no private key set for this peer"})])])),t[20]||(t[20]=e("li",null,[e("hr",{class:"dropdown-divider"})],-1)),e("li",null,[e("a",{class:"dropdown-item d-flex",role:"button",onClick:t[4]||(t[4]=m=>this.$emit("setting"))},[t[14]||(t[14]=e("i",{class:"me-auto bi bi-pen"},null,-1)),t[15]||(t[15]=N()),i(u,{t:"Peer Settings"})])]),e("li",null,[e("a",{class:"dropdown-item d-flex",role:"button",onClick:t[5]||(t[5]=m=>this.$emit("jobs"))},[t[16]||(t[16]=e("i",{class:"me-auto bi bi-app-indicator"},null,-1)),t[17]||(t[17]=N()),i(u,{t:"Schedule Jobs"})])]),t[21]||(t[21]=e("li",null,[e("hr",{class:"dropdown-divider"})],-1)),e("li",null,[e("a",{class:D(["dropdown-item d-flex text-warning",{disabled:this.restrictBtnDisabled}]),onClick:t[6]||(t[6]=m=>this.restrictPeer()),role:"button"},[t[18]||(t[18]=e("i",{class:"me-auto bi bi-lock"},null,-1)),this.restrictBtnDisabled?(a(),P(u,{key:1,t:"Restricting..."})):(a(),P(u,{key:0,t:"Restrict Access"}))],2)]),e("li",null,[e("a",{class:D(["dropdown-item d-flex fw-bold text-danger",{disabled:this.deleteBtnDisabled}]),onClick:t[7]||(t[7]=m=>this.confirmDelete=!0),role:"button"},[t[19]||(t[19]=e("i",{class:"me-auto bi bi-trash"},null,-1)),this.deleteBtnDisabled?(a(),P(u,{key:1,t:"Deleting..."})):(a(),P(u,{key:0,t:"Delete"}))],2)])],64))],64))])}const Kt=Q(It,[["render",Ht],["__scopeId","data-v-ebeddf70"]]),Yt={name:"peer",methods:{GetLocale:L},components:{LocaleText:C,PeerSettingsDropdown:Kt},props:{Peer:Object},data(){return{}},setup(){const o=O(null),t=O(!1),n=G();return Mt(o,r=>{t.value=!1}),{target:o,subMenuOpened:t,dashboardStore:n}},computed:{getLatestHandshake(){return this.Peer.latest_handshake.includes(",")?this.Peer.latest_handshake.split(",")[0]:this.Peer.latest_handshake}}},Zt={key:0,class:"card-header bg-transparent d-flex align-items-center gap-2 border-0"},Xt={key:0,style:{"font-size":"0.8rem",color:"#28a745"},class:"d-flex align-items-center"},es={style:{"font-size":"0.8rem"},class:"ms-auto d-flex gap-2"},ts={class:"text-primary"},ss={class:"text-success"},os={key:0,class:"text-secondary"},ns={key:1,class:"border-0 card-header bg-transparent text-warning fw-bold",style:{"font-size":"0.8rem"}},as={class:"card-body pt-1",style:{"font-size":"0.9rem"}},rs={class:"text-muted"},ls={class:"d-block"},is={class:"text-muted"},ds={class:"d-block"},us={class:"d-flex align-items-end ms-auto"};function cs(o,t,n,r,x,_){const u=U("LocaleText"),b=U("PeerSettingsDropdown");return a(),v("div",{class:D(["card shadow-sm rounded-3 peerCard",{"border-warning":n.Peer.restricted}])},[e("div",null,[n.Peer.restricted?(a(),v("div",ns,[t[13]||(t[13]=e("i",{class:"bi-lock-fill me-2"},null,-1)),i(u,{t:"Access Restricted"})])):(a(),v("div",Zt,[e("div",{class:D(["dot ms-0",{active:n.Peer.status==="running"}])},null,2),r.dashboardStore.Configuration.Server.dashboard_peer_list_display==="list"&&n.Peer.status==="running"?(a(),v("div",Xt,[t[7]||(t[7]=e("i",{class:"bi bi-box-arrow-in-right me-2"},null,-1)),e("span",null,w(n.Peer.endpoint),1)])):$("",!0),e("div",es,[e("span",ts,[t[8]||(t[8]=e("i",{class:"bi bi-arrow-down"},null,-1)),e("strong",null,w((n.Peer.cumu_receive+n.Peer.total_receive).toFixed(4)),1),t[9]||(t[9]=N(" GB "))]),e("span",ss,[t[10]||(t[10]=e("i",{class:"bi bi-arrow-up"},null,-1)),e("strong",null,w((n.Peer.cumu_sent+n.Peer.total_sent).toFixed(4)),1),t[11]||(t[11]=N(" GB "))]),n.Peer.latest_handshake!=="No Handshake"?(a(),v("span",os,[t[12]||(t[12]=e("i",{class:"bi bi-arrows-angle-contract"},null,-1)),N(" "+w(_.getLatestHandshake)+" ago ",1)])):$("",!0)])]))]),e("div",as,[e("h6",null,w(n.Peer.name?n.Peer.name:_.GetLocale("Untitled Peer")),1),e("div",{class:D(["d-flex",[r.dashboardStore.Configuration.Server.dashboard_peer_list_display==="grid"?"gap-1 flex-column":"flex-row gap-3"]])},[e("div",{class:D({"d-flex gap-2 align-items-center":r.dashboardStore.Configuration.Server.dashboard_peer_list_display==="list"})},[e("small",rs,[i(u,{t:"Public Key"})]),e("small",ls,[e("samp",null,w(n.Peer.id),1)])],2),e("div",{class:D({"d-flex gap-2 align-items-center":r.dashboardStore.Configuration.Server.dashboard_peer_list_display==="list"})},[e("small",is,[i(u,{t:"Allowed IPs"})]),e("small",ds,[e("samp",null,w(n.Peer.allowed_ip),1)])],2),e("div",us,[e("div",{class:D(["ms-auto px-2 rounded-3 subMenuBtn",{active:this.subMenuOpened}])},[e("a",{role:"button",class:"text-body",onClick:t[0]||(t[0]=m=>this.subMenuOpened=!0)},t[14]||(t[14]=[e("h5",{class:"mb-0"},[e("i",{class:"bi bi-three-dots"})],-1)])),i(se,{name:"slide-fade"},{default:T(()=>[this.subMenuOpened?(a(),P(b,{key:0,onQrcode:t[1]||(t[1]=m=>this.$emit("qrcode")),onConfigurationFile:t[2]||(t[2]=m=>this.$emit("configurationFile")),onSetting:t[3]||(t[3]=m=>this.$emit("setting")),onJobs:t[4]||(t[4]=m=>this.$emit("jobs")),onRefresh:t[5]||(t[5]=m=>this.$emit("refresh")),onShare:t[6]||(t[6]=m=>this.$emit("share")),Peer:n.Peer,ref:"target"},null,8,["Peer"])):$("",!0)]),_:1})],2)])],2)])],2)}const ms=Q(Yt,[["render",cs],["__scopeId","data-v-0f5aec0a"]]),ps={__name:"peerListModals",props:{configurationModals:Object,configurationModalSelectedPeer:Object},emits:["refresh"],setup(o,{emit:t}){const n=t,r=A(()=>R(()=>import("./peerShareLinkModal-DKEiBJ_g.js"),__vite__mapDeps([0,1,2,3,4,5,6]))),x=A(()=>R(()=>import("./peerJobs-OIcsbyz2.js"),__vite__mapDeps([7,8,1,2,4,3,5,9,10]))),_=A(()=>R(()=>import("./peerQRCode-DiLT87Op.js"),__vite__mapDeps([11,12,5,1,2,13]))),u=A(()=>R(()=>import("./peerConfigurationFile-D_jhzEId.js"),__vite__mapDeps([14,1,2,5,12,15]))),b=A(()=>R(()=>import("./peerSettings-ByC23ho9.js"),__vite__mapDeps([16,1,2,5,17])));return(m,p)=>(a(),P(ee,{name:"zoom"},{default:T(()=>[o.configurationModals.peerSetting.modalOpen?(a(),P(k(b),{key:"PeerSettingsModal",selectedPeer:o.configurationModalSelectedPeer,onRefresh:p[0]||(p[0]=S=>n("refresh")),onClose:p[1]||(p[1]=S=>o.configurationModals.peerSetting.modalOpen=!1)},null,8,["selectedPeer"])):$("",!0),o.configurationModals.peerQRCode.modalOpen?(a(),P(k(_),{key:"PeerQRCodeModal",selectedPeer:o.configurationModalSelectedPeer,onClose:p[2]||(p[2]=S=>o.configurationModals.peerQRCode.modalOpen=!1)},null,8,["selectedPeer"])):$("",!0),o.configurationModals.peerScheduleJobs.modalOpen?(a(),P(k(x),{key:"PeerJobsModal",onRefresh:p[3]||(p[3]=S=>n("refresh")),selectedPeer:o.configurationModalSelectedPeer,onClose:p[4]||(p[4]=S=>o.configurationModals.peerScheduleJobs.modalOpen=!1)},null,8,["selectedPeer"])):$("",!0),o.configurationModals.peerShare.modalOpen?(a(),P(k(r),{key:"PeerShareLinkModal",onClose:p[5]||(p[5]=S=>{o.configurationModals.peerShare.modalOpen=!1}),selectedPeer:o.configurationModalSelectedPeer},null,8,["selectedPeer"])):$("",!0),o.configurationModals.peerConfigurationFile.modalOpen?(a(),P(k(u),{key:4,onClose:p[6]||(p[6]=S=>o.configurationModals.peerConfigurationFile.modalOpen=!1),selectedPeer:o.configurationModalSelectedPeer},null,8,["selectedPeer"])):$("",!0)]),_:1}))}},fs={style:{"margin-bottom":"20px",height:"1px"},id:"loadMore"},gs={__name:"peerIntersectionObserver",props:["peerListLength","showPeersCount"],emits:["loadMore"],setup(o,{emit:t}){const n=O(void 0),r=t;return le(()=>{n.value=new IntersectionObserver(x=>{x.forEach(_=>{_.isIntersecting&&r("loadMore")})},{rootMargin:"20px",threshold:1}),n.value.observe(document.querySelector("#loadMore"))}),te(()=>{n.value.disconnect()}),(x,_)=>(a(),v("div",fs))}},vs={class:"container-fluid"},bs={class:"d-flex align-items-sm-center flex-column flex-sm-row gap-3"},hs={class:"text-muted d-flex align-items-center gap-2"},_s={class:"mb-0"},ys={class:"d-flex align-items-center gap-3"},ws={class:"mb-0 display-4"},Ss={class:"ms-sm-auto d-flex gap-2 flex-column"},$s={class:"card rounded-3 bg-transparent"},Ps={class:"card-body py-2 d-flex align-items-center"},xs={class:"text-muted"},Cs={class:"form-check form-switch mb-0 ms-auto pe-0 me-0"},ks=["for"],Os={key:2,class:"spinner-border spinner-border-sm ms-2","aria-hidden":"true"},Ds=["disabled","id"],Ms={class:"d-flex gap-2"},Ls={class:"row mt-3 gy-2 gx-2 mb-2"},As={class:"col-12 col-lg-3"},Rs={class:"card rounded-3 bg-transparent h-100"},Is={class:"card-body py-2 d-flex flex-column justify-content-center"},Es={class:"mb-0 text-muted"},Ts={class:"col-12 col-lg-3"},Bs={class:"card rounded-3 bg-transparent h-100"},Ns={class:"card-body py-2 d-flex flex-column justify-content-center"},Js={class:"mb-0 text-muted"},Fs={style:{"word-break":"break-all"},class:"col-12 col-lg-6"},js={class:"card rounded-3 bg-transparent h-100"},Vs={class:"card-body py-2 d-flex flex-column justify-content-center"},Us={class:"mb-0 text-muted"},Gs={class:"row gx-2 gy-2 mb-2"},Qs={class:"col-12 col-lg-3"},zs={class:"card rounded-3 bg-transparent h-100"},Ws={class:"card-body d-flex"},qs={class:"mb-0 text-muted"},Hs={class:"h4"},Ks={class:"col-12 col-lg-3"},Ys={class:"card rounded-3 bg-transparent h-100"},Zs={class:"card-body d-flex"},Xs={class:"mb-0 text-muted"},eo={class:"h4"},to={class:"col-12 col-lg-3"},so={class:"card rounded-3 bg-transparent h-100"},oo={class:"card-body d-flex"},no={class:"mb-0 text-muted"},ao={class:"h4 text-primary"},ro={class:"col-12 col-lg-3"},lo={class:"card rounded-3 bg-transparent h-100"},io={class:"card-body d-flex"},uo={class:"mb-0 text-muted"},co={class:"h4 text-success"},mo={style:{"margin-bottom":"80px"}},po=20,fo={__name:"peerList",async setup(o){let t,n;const r=A(()=>R(()=>import("./peerSearchBar-BEWVShK6.js"),__vite__mapDeps([18,1,2,5,19]))),x=A(()=>R(()=>import("./peerJobsAllModal-Ca-jbk3P.js"),__vite__mapDeps([20,8,1,2,4,3,5,9]))),_=A(()=>R(()=>import("./peerJobsLogsModal-7hkHiE3G.js"),__vite__mapDeps([21,3,1,2,5]))),u=A(()=>R(()=>import("./editConfiguration-64y8oZmp.js"),__vite__mapDeps([22,1,2,5,3,23]))),b=A(()=>R(()=>import("./selectPeers-C_td7K2S.js"),__vite__mapDeps([24,1,2,5,25]))),m=A(()=>R(()=>import("./peerAddModal-BaPKy6IQ.js"),__vite__mapDeps([26,1,2,5,27]))),p=G(),S=de(),M=ie(),l=O({}),c=O([]),g=O(!1),y=O({}),h=O({peerNew:{modalOpen:!1},peerSetting:{modalOpen:!1},peerScheduleJobs:{modalOpen:!1},peerQRCode:{modalOpen:!1},peerConfigurationFile:{modalOpen:!1},peerCreate:{modalOpen:!1},peerScheduleJobsAll:{modalOpen:!1},peerScheduleJobsLogs:{modalOpen:!1},peerShare:{modalOpen:!1},editConfiguration:{modalOpen:!1},selectPeers:{modalOpen:!1},backupRestore:{modalOpen:!1},deleteConfiguration:{modalOpen:!1},editRawConfigurationFile:{modalOpen:!1}}),Z=O(!1),I=async()=>{await F("/api/getWireguardConfigurationInfo",{configurationName:M.params.id},f=>{f.status&&(l.value=f.data.configurationInfo,c.value=f.data.configurationPeers,c.value.forEach(s=>{s.restricted=!1}),f.data.configurationRestrictedPeers.forEach(s=>{s.restricted=!0,c.value.push(s)}))})};[t,n]=ve(()=>I()),await t,n();const z=O(void 0),oe=()=>{clearInterval(z.value),z.value=setInterval(async()=>{await I()},parseInt(p.Configuration.Server.dashboard_refresh_interval))};oe(),te(()=>{clearInterval(z.value),z.value=void 0}),Y(()=>p.Configuration.Server.dashboard_refresh_interval,()=>{oe()});const pe=async()=>{g.value=!0,await F("/api/toggleWireguardConfiguration",{configurationName:l.value.Name},f=>{f.status?p.newMessage("Server",`${l.value.Name} ${f.data?"is on":"is off"}`,"success"):p.newMessage("Server",f.message,"danger"),S.Configurations.find(s=>s.Name===l.value.Name).Status=f.data,l.value.Status=f.data,g.value=!1})},W=E(()=>({connectedPeers:c.value.filter(f=>f.status==="running").length,totalUsage:c.value.length>0?c.value.filter(f=>!f.restricted).map(f=>f.total_data+f.cumu_data).reduce((f,s)=>f+s,0).toFixed(4):0,totalReceive:c.value.length>0?c.value.filter(f=>!f.restricted).map(f=>f.total_receive+f.cumu_receive).reduce((f,s)=>f+s,0).toFixed(4):0,totalSent:c.value.length>0?c.value.filter(f=>!f.restricted).map(f=>f.total_sent+f.cumu_sent).reduce((f,s)=>f+s,0).toFixed(4):0})),q=O(10),ne=E(()=>{const f=S.searchString?c.value.filter(s=>s.name.includes(S.searchString)||s.id.includes(S.searchString)||s.allowed_ip.includes(S.searchString)):c.value;return p.Configuration.Server.dashboard_sort==="restricted"?f.sort((s,d)=>s[p.Configuration.Server.dashboard_sort]d[p.Configuration.Server.dashboard_sort]?-1:0).slice(0,q.value):f.sort((s,d)=>s[p.Configuration.Server.dashboard_sort]d[p.Configuration.Server.dashboard_sort]?1:0).slice(0,q.value)});return(f,s)=>(a(),v("div",vs,[e("div",bs,[e("div",null,[e("div",hs,[e("h5",_s,[i(ye,{protocol:l.value.Protocol},null,8,["protocol"])])]),e("div",ys,[e("h1",ws,[e("samp",null,w(l.value.Name),1)])])]),e("div",Ss,[e("div",$s,[e("div",Ps,[e("small",xs,[i(C,{t:"Status"})]),e("div",{class:D(["dot ms-2",{active:l.value.Status}])},null,2),e("div",Cs,[e("label",{class:"form-check-label",style:{cursor:"pointer"},for:"switch"+l.value.id},[l.value.Status&&!g.value?(a(),P(C,{key:0,t:"On"})):!l.value.Status&&!g.value?(a(),P(C,{key:1,t:"Off"})):$("",!0),g.value?(a(),v("span",Os)):$("",!0)],8,ks),be(e("input",{class:"form-check-input",style:{cursor:"pointer"},disabled:g.value,type:"checkbox",role:"switch",id:"switch"+l.value.id,onChange:s[0]||(s[0]=d=>pe()),"onUpdate:modelValue":s[1]||(s[1]=d=>l.value.Status=d)},null,40,Ds),[[he,l.value.Status]])])])]),e("div",Ms,[e("a",{role:"button",onClick:s[2]||(s[2]=d=>h.value.peerNew.modalOpen=!0),class:"titleBtn py-2 text-decoration-none btn text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle"},[s[29]||(s[29]=e("i",{class:"bi bi-plus-circle me-2"},null,-1)),i(C,{t:"Peer"})]),e("button",{class:"titleBtn py-2 text-decoration-none btn text-primary-emphasis bg-primary-subtle rounded-3 border-1 border-primary-subtle",onClick:s[3]||(s[3]=d=>h.value.editConfiguration.modalOpen=!0),type:"button","aria-expanded":"false"},[s[30]||(s[30]=e("i",{class:"bi bi-gear-fill me-2"},null,-1)),i(C,{t:"Configuration Settings"})])])])]),s[35]||(s[35]=e("hr",null,null,-1)),e("div",Ls,[e("div",As,[e("div",Rs,[e("div",Is,[e("p",Es,[e("small",null,[i(C,{t:"Address"})])]),N(" "+w(l.value.Address),1)])])]),e("div",Ts,[e("div",Bs,[e("div",Ns,[e("p",Js,[e("small",null,[i(C,{t:"Listen Port"})])]),N(" "+w(l.value.ListenPort),1)])])]),e("div",Fs,[e("div",js,[e("div",Vs,[e("p",Us,[e("small",null,[i(C,{t:"Public Key"})])]),e("samp",null,w(l.value.PublicKey),1)])])])]),e("div",Gs,[e("div",Qs,[e("div",zs,[e("div",Ws,[e("div",null,[e("p",qs,[e("small",null,[i(C,{t:"Connected Peers"})])]),e("strong",Hs,w(W.value.connectedPeers)+" / "+w(c.value.length),1)]),s[31]||(s[31]=e("i",{class:"bi bi-ethernet ms-auto h2 text-muted"},null,-1))])])]),e("div",Ks,[e("div",Ys,[e("div",Zs,[e("div",null,[e("p",Xs,[e("small",null,[i(C,{t:"Total Usage"})])]),e("strong",eo,w(W.value.totalUsage)+" GB",1)]),s[32]||(s[32]=e("i",{class:"bi bi-arrow-down-up ms-auto h2 text-muted"},null,-1))])])]),e("div",to,[e("div",so,[e("div",oo,[e("div",null,[e("p",no,[e("small",null,[i(C,{t:"Total Received"})])]),e("strong",ao,w(W.value.totalReceive)+" GB",1)]),s[33]||(s[33]=e("i",{class:"bi bi-arrow-down ms-auto h2 text-muted"},null,-1))])])]),e("div",ro,[e("div",lo,[e("div",io,[e("div",null,[e("p",uo,[e("small",null,[i(C,{t:"Total Sent"})])]),e("strong",co,w(W.value.totalSent)+" GB",1)]),s[34]||(s[34]=e("i",{class:"bi bi-arrow-up ms-auto h2 text-muted"},null,-1))])])])]),i(Ze,{configurationPeers:c.value,configurationInfo:l.value},null,8,["configurationPeers","configurationInfo"]),s[36]||(s[36]=e("hr",null,null,-1)),e("div",mo,[c.value.length>0?(a(),P(Pt,{key:0,onSearch:s[4]||(s[4]=d=>Z.value=!0),onJobsAll:s[5]||(s[5]=d=>h.value.peerScheduleJobsAll.modalOpen=!0),onJobLogs:s[6]||(s[6]=d=>h.value.peerScheduleJobsLogs.modalOpen=!0),onEditConfiguration:s[7]||(s[7]=d=>h.value.editConfiguration.modalOpen=!0),onSelectPeers:s[8]||(s[8]=d=>h.value.selectPeers.modalOpen=!0),onBackupRestore:s[9]||(s[9]=d=>h.value.backupRestore.modalOpen=!0),onDeleteConfiguration:s[10]||(s[10]=d=>h.value.deleteConfiguration.modalOpen=!0),configuration:l.value},null,8,["configuration"])):$("",!0),i(ee,{name:"peerList",tag:"div",class:"row gx-2 gy-2 z-0 position-relative"},{default:T(()=>[(a(!0),v(B,null,H(ne.value,d=>(a(),v("div",{class:D(["col-12",{"col-lg-6 col-xl-4":k(p).Configuration.Server.dashboard_peer_list_display==="grid"}]),key:d.id},[i(ms,{Peer:d,onShare:j=>{h.value.peerShare.modalOpen=!0,y.value=d},onRefresh:s[11]||(s[11]=j=>I()),onJobs:j=>{h.value.peerScheduleJobs.modalOpen=!0,y.value=d},onSetting:j=>{h.value.peerSetting.modalOpen=!0,y.value=d},onQrcode:j=>{y.value=d,h.value.peerQRCode.modalOpen=!0},onConfigurationFile:j=>{y.value=d,h.value.peerConfigurationFile.modalOpen=!0}},null,8,["Peer","onShare","onJobs","onSetting","onQrcode","onConfigurationFile"])],2))),128))]),_:1})]),i(se,{name:"slideUp"},{default:T(()=>[Z.value?(a(),P(k(r),{key:0,onClose:s[12]||(s[12]=d=>Z.value=!1)})):$("",!0)]),_:1}),i(ps,{configurationModals:h.value,configurationModalSelectedPeer:y.value,onRefresh:s[13]||(s[13]=d=>I())},null,8,["configurationModals","configurationModalSelectedPeer"]),i(ee,{name:"zoom"},{default:T(()=>[(a(),P(_e,{key:"PeerAddModal"},{default:T(()=>[h.value.peerNew.modalOpen?(a(),P(k(m),{key:0,onClose:s[14]||(s[14]=d=>h.value.peerNew.modalOpen=!1),onAddedPeers:s[15]||(s[15]=d=>{h.value.peerNew.modalOpen=!1,I()})})):$("",!0)]),_:1})),h.value.peerScheduleJobsAll.modalOpen?(a(),P(k(x),{key:"PeerJobsAllModal",onRefresh:s[16]||(s[16]=d=>I()),onAllLogs:s[17]||(s[17]=d=>h.value.peerScheduleJobsLogs.modalOpen=!0),onClose:s[18]||(s[18]=d=>h.value.peerScheduleJobsAll.modalOpen=!1),configurationPeers:c.value},null,8,["configurationPeers"])):$("",!0),h.value.peerScheduleJobsLogs.modalOpen?(a(),P(k(_),{key:"PeerJobsLogsModal",onClose:s[19]||(s[19]=d=>h.value.peerScheduleJobsLogs.modalOpen=!1),configurationInfo:l.value},null,8,["configurationInfo"])):$("",!0),h.value.editConfiguration.modalOpen?(a(),P(k(u),{key:"EditConfigurationModal",onEditRaw:s[20]||(s[20]=d=>h.value.editRawConfigurationFile.modalOpen=!0),onClose:s[21]||(s[21]=d=>h.value.editConfiguration.modalOpen=!1),onDataChanged:s[22]||(s[22]=d=>l.value=d),onRefresh:s[23]||(s[23]=d=>I()),onBackupRestore:s[24]||(s[24]=d=>h.value.backupRestore.modalOpen=!0),onDeleteConfiguration:s[25]||(s[25]=d=>h.value.deleteConfiguration.modalOpen=!0),configurationInfo:l.value},null,8,["configurationInfo"])):$("",!0),h.value.selectPeers.modalOpen?(a(),P(k(b),{key:3,onRefresh:s[26]||(s[26]=d=>I()),configurationPeers:c.value,onClose:s[27]||(s[27]=d=>h.value.selectPeers.modalOpen=!1)},null,8,["configurationPeers"])):$("",!0)]),_:1}),i(gs,{showPeersCount:q.value,peerListLength:ne.value.length,onLoadMore:s[28]||(s[28]=d=>q.value+=po)},null,8,["showPeersCount","peerListLength"])]))}},yo=Q(fo,[["__scopeId","data-v-4fe6960d"]]);export{yo as default}; diff --git a/src/static/app/dist/assets/peerList-EJuRsJAQ.css b/src/static/app/dist/assets/peerList-mRv1n5MO.css similarity index 99% rename from src/static/app/dist/assets/peerList-EJuRsJAQ.css rename to src/static/app/dist/assets/peerList-mRv1n5MO.css index 32abc78..de521b7 100644 --- a/src/static/app/dist/assets/peerList-EJuRsJAQ.css +++ b/src/static/app/dist/assets/peerList-mRv1n5MO.css @@ -4,4 +4,4 @@ * Licensed under the MIT license - http://opensource.org/licenses/MIT * * Copyright (c) 2020 Animate.css - */:root{--animate-duration: 1s;--animate-delay: 1s;--animate-repeat: 1}.animate__animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-duration:var(--animate-duration);animation-duration:var(--animate-duration);-webkit-animation-fill-mode:both;animation-fill-mode:both}.animate__animated.animate__infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animate__animated.animate__repeat-1{-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-iteration-count:var(--animate-repeat);animation-iteration-count:var(--animate-repeat)}.animate__animated.animate__repeat-2{-webkit-animation-iteration-count:2;animation-iteration-count:2;-webkit-animation-iteration-count:calc(var(--animate-repeat) * 2);animation-iteration-count:calc(var(--animate-repeat) * 2)}.animate__animated.animate__repeat-3{-webkit-animation-iteration-count:3;animation-iteration-count:3;-webkit-animation-iteration-count:calc(var(--animate-repeat) * 3);animation-iteration-count:calc(var(--animate-repeat) * 3)}.animate__animated.animate__delay-1s{-webkit-animation-delay:1s;animation-delay:1s;-webkit-animation-delay:var(--animate-delay);animation-delay:var(--animate-delay)}.animate__animated.animate__delay-2s{-webkit-animation-delay:2s;animation-delay:2s;-webkit-animation-delay:calc(var(--animate-delay) * 2);animation-delay:calc(var(--animate-delay) * 2)}.animate__animated.animate__delay-3s{-webkit-animation-delay:3s;animation-delay:3s;-webkit-animation-delay:calc(var(--animate-delay) * 3);animation-delay:calc(var(--animate-delay) * 3)}.animate__animated.animate__delay-4s{-webkit-animation-delay:4s;animation-delay:4s;-webkit-animation-delay:calc(var(--animate-delay) * 4);animation-delay:calc(var(--animate-delay) * 4)}.animate__animated.animate__delay-5s{-webkit-animation-delay:5s;animation-delay:5s;-webkit-animation-delay:calc(var(--animate-delay) * 5);animation-delay:calc(var(--animate-delay) * 5)}.animate__animated.animate__faster{-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-animation-duration:calc(var(--animate-duration) / 2);animation-duration:calc(var(--animate-duration) / 2)}.animate__animated.animate__fast{-webkit-animation-duration:.8s;animation-duration:.8s;-webkit-animation-duration:calc(var(--animate-duration) * .8);animation-duration:calc(var(--animate-duration) * .8)}.animate__animated.animate__slow{-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-duration:calc(var(--animate-duration) * 2);animation-duration:calc(var(--animate-duration) * 2)}.animate__animated.animate__slower{-webkit-animation-duration:3s;animation-duration:3s;-webkit-animation-duration:calc(var(--animate-duration) * 3);animation-duration:calc(var(--animate-duration) * 3)}@media print,(prefers-reduced-motion: reduce){.animate__animated{-webkit-animation-duration:1ms!important;animation-duration:1ms!important;-webkit-transition-duration:1ms!important;transition-duration:1ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important}.animate__animated[class*=Out]{opacity:0}}@-webkit-keyframes bounce{0%,20%,53%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}40%,43%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-30px,0) scaleY(1.1);transform:translate3d(0,-30px,0) scaleY(1.1)}70%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-15px,0) scaleY(1.05);transform:translate3d(0,-15px,0) scaleY(1.05)}80%{-webkit-transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0) scaleY(.95);transform:translateZ(0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-4px,0) scaleY(1.02);transform:translate3d(0,-4px,0) scaleY(1.02)}}@keyframes bounce{0%,20%,53%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}40%,43%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-30px,0) scaleY(1.1);transform:translate3d(0,-30px,0) scaleY(1.1)}70%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-15px,0) scaleY(1.05);transform:translate3d(0,-15px,0) scaleY(1.05)}80%{-webkit-transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0) scaleY(.95);transform:translateZ(0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-4px,0) scaleY(1.02);transform:translate3d(0,-4px,0) scaleY(1.02)}}.animate__bounce{-webkit-animation-name:bounce;animation-name:bounce;-webkit-transform-origin:center bottom;transform-origin:center bottom}@-webkit-keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}.animate__flash{-webkit-animation-name:flash;animation-name:flash}@-webkit-keyframes pulse{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}50%{-webkit-transform:scale3d(1.05,1.05,1.05);transform:scale3d(1.05,1.05,1.05)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes pulse{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}50%{-webkit-transform:scale3d(1.05,1.05,1.05);transform:scale3d(1.05,1.05,1.05)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__pulse{-webkit-animation-name:pulse;animation-name:pulse;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}@-webkit-keyframes rubberBand{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}30%{-webkit-transform:scale3d(1.25,.75,1);transform:scale3d(1.25,.75,1)}40%{-webkit-transform:scale3d(.75,1.25,1);transform:scale3d(.75,1.25,1)}50%{-webkit-transform:scale3d(1.15,.85,1);transform:scale3d(1.15,.85,1)}65%{-webkit-transform:scale3d(.95,1.05,1);transform:scale3d(.95,1.05,1)}75%{-webkit-transform:scale3d(1.05,.95,1);transform:scale3d(1.05,.95,1)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes rubberBand{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}30%{-webkit-transform:scale3d(1.25,.75,1);transform:scale3d(1.25,.75,1)}40%{-webkit-transform:scale3d(.75,1.25,1);transform:scale3d(.75,1.25,1)}50%{-webkit-transform:scale3d(1.15,.85,1);transform:scale3d(1.15,.85,1)}65%{-webkit-transform:scale3d(.95,1.05,1);transform:scale3d(.95,1.05,1)}75%{-webkit-transform:scale3d(1.05,.95,1);transform:scale3d(1.05,.95,1)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__rubberBand{-webkit-animation-name:rubberBand;animation-name:rubberBand}@-webkit-keyframes shakeX{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0)}20%,40%,60%,80%{-webkit-transform:translate3d(10px,0,0);transform:translate3d(10px,0,0)}}@keyframes shakeX{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0)}20%,40%,60%,80%{-webkit-transform:translate3d(10px,0,0);transform:translate3d(10px,0,0)}}.animate__shakeX{-webkit-animation-name:shakeX;animation-name:shakeX}@-webkit-keyframes shakeY{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(0,-10px,0);transform:translate3d(0,-10px,0)}20%,40%,60%,80%{-webkit-transform:translate3d(0,10px,0);transform:translate3d(0,10px,0)}}@keyframes shakeY{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(0,-10px,0);transform:translate3d(0,-10px,0)}20%,40%,60%,80%{-webkit-transform:translate3d(0,10px,0);transform:translate3d(0,10px,0)}}.animate__shakeY{-webkit-animation-name:shakeY;animation-name:shakeY}@-webkit-keyframes headShake{0%{-webkit-transform:translateX(0);transform:translate(0)}6.5%{-webkit-transform:translateX(-6px) rotateY(-9deg);transform:translate(-6px) rotateY(-9deg)}18.5%{-webkit-transform:translateX(5px) rotateY(7deg);transform:translate(5px) rotateY(7deg)}31.5%{-webkit-transform:translateX(-3px) rotateY(-5deg);transform:translate(-3px) rotateY(-5deg)}43.5%{-webkit-transform:translateX(2px) rotateY(3deg);transform:translate(2px) rotateY(3deg)}50%{-webkit-transform:translateX(0);transform:translate(0)}}@keyframes headShake{0%{-webkit-transform:translateX(0);transform:translate(0)}6.5%{-webkit-transform:translateX(-6px) rotateY(-9deg);transform:translate(-6px) rotateY(-9deg)}18.5%{-webkit-transform:translateX(5px) rotateY(7deg);transform:translate(5px) rotateY(7deg)}31.5%{-webkit-transform:translateX(-3px) rotateY(-5deg);transform:translate(-3px) rotateY(-5deg)}43.5%{-webkit-transform:translateX(2px) rotateY(3deg);transform:translate(2px) rotateY(3deg)}50%{-webkit-transform:translateX(0);transform:translate(0)}}.animate__headShake{-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-name:headShake;animation-name:headShake}@-webkit-keyframes swing{20%{-webkit-transform:rotate3d(0,0,1,15deg);transform:rotate3d(0,0,1,15deg)}40%{-webkit-transform:rotate3d(0,0,1,-10deg);transform:rotate3d(0,0,1,-10deg)}60%{-webkit-transform:rotate3d(0,0,1,5deg);transform:rotate3d(0,0,1,5deg)}80%{-webkit-transform:rotate3d(0,0,1,-5deg);transform:rotate3d(0,0,1,-5deg)}to{-webkit-transform:rotate3d(0,0,1,0deg);transform:rotate3d(0,0,1,0)}}@keyframes swing{20%{-webkit-transform:rotate3d(0,0,1,15deg);transform:rotate3d(0,0,1,15deg)}40%{-webkit-transform:rotate3d(0,0,1,-10deg);transform:rotate3d(0,0,1,-10deg)}60%{-webkit-transform:rotate3d(0,0,1,5deg);transform:rotate3d(0,0,1,5deg)}80%{-webkit-transform:rotate3d(0,0,1,-5deg);transform:rotate3d(0,0,1,-5deg)}to{-webkit-transform:rotate3d(0,0,1,0deg);transform:rotate3d(0,0,1,0)}}.animate__swing{-webkit-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;animation-name:swing}@-webkit-keyframes tada{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}10%,20%{-webkit-transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg);transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg)}30%,50%,70%,90%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)}40%,60%,80%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes tada{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}10%,20%{-webkit-transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg);transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg)}30%,50%,70%,90%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)}40%,60%,80%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__tada{-webkit-animation-name:tada;animation-name:tada}@-webkit-keyframes wobble{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}15%{-webkit-transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg);transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{-webkit-transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg);transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{-webkit-transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg);transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{-webkit-transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg);transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{-webkit-transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg);transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes wobble{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}15%{-webkit-transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg);transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{-webkit-transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg);transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{-webkit-transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg);transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{-webkit-transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg);transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{-webkit-transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg);transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__wobble{-webkit-animation-name:wobble;animation-name:wobble}@-webkit-keyframes jello{0%,11.1%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}22.2%{-webkit-transform:skewX(-12.5deg) skewY(-12.5deg);transform:skew(-12.5deg) skewY(-12.5deg)}33.3%{-webkit-transform:skewX(6.25deg) skewY(6.25deg);transform:skew(6.25deg) skewY(6.25deg)}44.4%{-webkit-transform:skewX(-3.125deg) skewY(-3.125deg);transform:skew(-3.125deg) skewY(-3.125deg)}55.5%{-webkit-transform:skewX(1.5625deg) skewY(1.5625deg);transform:skew(1.5625deg) skewY(1.5625deg)}66.6%{-webkit-transform:skewX(-.78125deg) skewY(-.78125deg);transform:skew(-.78125deg) skewY(-.78125deg)}77.7%{-webkit-transform:skewX(.390625deg) skewY(.390625deg);transform:skew(.390625deg) skewY(.390625deg)}88.8%{-webkit-transform:skewX(-.1953125deg) skewY(-.1953125deg);transform:skew(-.1953125deg) skewY(-.1953125deg)}}@keyframes jello{0%,11.1%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}22.2%{-webkit-transform:skewX(-12.5deg) skewY(-12.5deg);transform:skew(-12.5deg) skewY(-12.5deg)}33.3%{-webkit-transform:skewX(6.25deg) skewY(6.25deg);transform:skew(6.25deg) skewY(6.25deg)}44.4%{-webkit-transform:skewX(-3.125deg) skewY(-3.125deg);transform:skew(-3.125deg) skewY(-3.125deg)}55.5%{-webkit-transform:skewX(1.5625deg) skewY(1.5625deg);transform:skew(1.5625deg) skewY(1.5625deg)}66.6%{-webkit-transform:skewX(-.78125deg) skewY(-.78125deg);transform:skew(-.78125deg) skewY(-.78125deg)}77.7%{-webkit-transform:skewX(.390625deg) skewY(.390625deg);transform:skew(.390625deg) skewY(.390625deg)}88.8%{-webkit-transform:skewX(-.1953125deg) skewY(-.1953125deg);transform:skew(-.1953125deg) skewY(-.1953125deg)}}.animate__jello{-webkit-animation-name:jello;animation-name:jello;-webkit-transform-origin:center;transform-origin:center}@-webkit-keyframes heartBeat{0%{-webkit-transform:scale(1);transform:scale(1)}14%{-webkit-transform:scale(1.3);transform:scale(1.3)}28%{-webkit-transform:scale(1);transform:scale(1)}42%{-webkit-transform:scale(1.3);transform:scale(1.3)}70%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes heartBeat{0%{-webkit-transform:scale(1);transform:scale(1)}14%{-webkit-transform:scale(1.3);transform:scale(1.3)}28%{-webkit-transform:scale(1);transform:scale(1)}42%{-webkit-transform:scale(1.3);transform:scale(1.3)}70%{-webkit-transform:scale(1);transform:scale(1)}}.animate__heartBeat{-webkit-animation-name:heartBeat;animation-name:heartBeat;-webkit-animation-duration:1.3s;animation-duration:1.3s;-webkit-animation-duration:calc(var(--animate-duration) * 1.3);animation-duration:calc(var(--animate-duration) * 1.3);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}@-webkit-keyframes backInDown{0%{-webkit-transform:translateY(-1200px) scale(.7);transform:translateY(-1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInDown{0%{-webkit-transform:translateY(-1200px) scale(.7);transform:translateY(-1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInDown{-webkit-animation-name:backInDown;animation-name:backInDown}@-webkit-keyframes backInLeft{0%{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInLeft{0%{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInLeft{-webkit-animation-name:backInLeft;animation-name:backInLeft}@-webkit-keyframes backInRight{0%{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInRight{0%{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInRight{-webkit-animation-name:backInRight;animation-name:backInRight}@-webkit-keyframes backInUp{0%{-webkit-transform:translateY(1200px) scale(.7);transform:translateY(1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInUp{0%{-webkit-transform:translateY(1200px) scale(.7);transform:translateY(1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInUp{-webkit-animation-name:backInUp;animation-name:backInUp}@-webkit-keyframes backOutDown{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(700px) scale(.7);transform:translateY(700px) scale(.7);opacity:.7}}@keyframes backOutDown{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(700px) scale(.7);transform:translateY(700px) scale(.7);opacity:.7}}.animate__backOutDown{-webkit-animation-name:backOutDown;animation-name:backOutDown}@-webkit-keyframes backOutLeft{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}}@keyframes backOutLeft{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}}.animate__backOutLeft{-webkit-animation-name:backOutLeft;animation-name:backOutLeft}@-webkit-keyframes backOutRight{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}}@keyframes backOutRight{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}}.animate__backOutRight{-webkit-animation-name:backOutRight;animation-name:backOutRight}@-webkit-keyframes backOutUp{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(-700px) scale(.7);transform:translateY(-700px) scale(.7);opacity:.7}}@keyframes backOutUp{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(-700px) scale(.7);transform:translateY(-700px) scale(.7);opacity:.7}}.animate__backOutUp{-webkit-animation-name:backOutUp;animation-name:backOutUp}@-webkit-keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}60%{opacity:1;-webkit-transform:scale3d(1.03,1.03,1.03);transform:scale3d(1.03,1.03,1.03)}80%{-webkit-transform:scale3d(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}60%{opacity:1;-webkit-transform:scale3d(1.03,1.03,1.03);transform:scale3d(1.03,1.03,1.03)}80%{-webkit-transform:scale3d(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__bounceIn{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInDown{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,-3000px,0) scaleY(3);transform:translate3d(0,-3000px,0) scaleY(3)}60%{opacity:1;-webkit-transform:translate3d(0,25px,0) scaleY(.9);transform:translate3d(0,25px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,-10px,0) scaleY(.95);transform:translate3d(0,-10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,5px,0) scaleY(.985);transform:translate3d(0,5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInDown{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,-3000px,0) scaleY(3);transform:translate3d(0,-3000px,0) scaleY(3)}60%{opacity:1;-webkit-transform:translate3d(0,25px,0) scaleY(.9);transform:translate3d(0,25px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,-10px,0) scaleY(.95);transform:translate3d(0,-10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,5px,0) scaleY(.985);transform:translate3d(0,5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInDown{-webkit-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(-3000px,0,0) scaleX(3);transform:translate3d(-3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(25px,0,0) scaleX(1);transform:translate3d(25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(-10px,0,0) scaleX(.98);transform:translate3d(-10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(5px,0,0) scaleX(.995);transform:translate3d(5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(-3000px,0,0) scaleX(3);transform:translate3d(-3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(25px,0,0) scaleX(1);transform:translate3d(25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(-10px,0,0) scaleX(.98);transform:translate3d(-10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(5px,0,0) scaleX(.995);transform:translate3d(5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInLeft{-webkit-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(3000px,0,0) scaleX(3);transform:translate3d(3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(-25px,0,0) scaleX(1);transform:translate3d(-25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(10px,0,0) scaleX(.98);transform:translate3d(10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(-5px,0,0) scaleX(.995);transform:translate3d(-5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(3000px,0,0) scaleX(3);transform:translate3d(3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(-25px,0,0) scaleX(1);transform:translate3d(-25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(10px,0,0) scaleX(.98);transform:translate3d(10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(-5px,0,0) scaleX(.995);transform:translate3d(-5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInRight{-webkit-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceInUp{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,3000px,0) scaleY(5);transform:translate3d(0,3000px,0) scaleY(5)}60%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,10px,0) scaleY(.95);transform:translate3d(0,10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-5px,0) scaleY(.985);transform:translate3d(0,-5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInUp{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,3000px,0) scaleY(5);transform:translate3d(0,3000px,0) scaleY(5)}60%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,10px,0) scaleY(.95);transform:translate3d(0,10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-5px,0) scaleY(.985);transform:translate3d(0,-5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInUp{-webkit-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceOut{20%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}50%,55%{opacity:1;-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}to{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}}@keyframes bounceOut{20%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}50%,55%{opacity:1;-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}to{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}}.animate__bounceOut{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-animation-name:bounceOut;animation-name:bounceOut}@-webkit-keyframes bounceOutDown{20%{-webkit-transform:translate3d(0,10px,0) scaleY(.985);transform:translate3d(0,10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,2000px,0) scaleY(3);transform:translate3d(0,2000px,0) scaleY(3)}}@keyframes bounceOutDown{20%{-webkit-transform:translate3d(0,10px,0) scaleY(.985);transform:translate3d(0,10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,2000px,0) scaleY(3);transform:translate3d(0,2000px,0) scaleY(3)}}.animate__bounceOutDown{-webkit-animation-name:bounceOutDown;animation-name:bounceOutDown}@-webkit-keyframes bounceOutLeft{20%{opacity:1;-webkit-transform:translate3d(20px,0,0) scaleX(.9);transform:translate3d(20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0) scaleX(2);transform:translate3d(-2000px,0,0) scaleX(2)}}@keyframes bounceOutLeft{20%{opacity:1;-webkit-transform:translate3d(20px,0,0) scaleX(.9);transform:translate3d(20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0) scaleX(2);transform:translate3d(-2000px,0,0) scaleX(2)}}.animate__bounceOutLeft{-webkit-animation-name:bounceOutLeft;animation-name:bounceOutLeft}@-webkit-keyframes bounceOutRight{20%{opacity:1;-webkit-transform:translate3d(-20px,0,0) scaleX(.9);transform:translate3d(-20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(2000px,0,0) scaleX(2);transform:translate3d(2000px,0,0) scaleX(2)}}@keyframes bounceOutRight{20%{opacity:1;-webkit-transform:translate3d(-20px,0,0) scaleX(.9);transform:translate3d(-20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(2000px,0,0) scaleX(2);transform:translate3d(2000px,0,0) scaleX(2)}}.animate__bounceOutRight{-webkit-animation-name:bounceOutRight;animation-name:bounceOutRight}@-webkit-keyframes bounceOutUp{20%{-webkit-transform:translate3d(0,-10px,0) scaleY(.985);transform:translate3d(0,-10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,20px,0) scaleY(.9);transform:translate3d(0,20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0) scaleY(3);transform:translate3d(0,-2000px,0) scaleY(3)}}@keyframes bounceOutUp{20%{-webkit-transform:translate3d(0,-10px,0) scaleY(.985);transform:translate3d(0,-10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,20px,0) scaleY(.9);transform:translate3d(0,20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0) scaleY(3);transform:translate3d(0,-2000px,0) scaleY(3)}}.animate__bounceOutUp{-webkit-animation-name:bounceOutUp;animation-name:bounceOutUp}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate__fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInDownBig{-webkit-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInRightBig{-webkit-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInUpBig{-webkit-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeInTopLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInTopLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInTopLeft{-webkit-animation-name:fadeInTopLeft;animation-name:fadeInTopLeft}@-webkit-keyframes fadeInTopRight{0%{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInTopRight{0%{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInTopRight{-webkit-animation-name:fadeInTopRight;animation-name:fadeInTopRight}@-webkit-keyframes fadeInBottomLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInBottomLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInBottomLeft{-webkit-animation-name:fadeInBottomLeft;animation-name:fadeInBottomLeft}@-webkit-keyframes fadeInBottomRight{0%{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInBottomRight{0%{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInBottomRight{-webkit-animation-name:fadeInBottomRight;animation-name:fadeInBottomRight}@-webkit-keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.animate__fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutDown{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes fadeOutDown{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}.animate__fadeOutDown{-webkit-animation-name:fadeOutDown;animation-name:fadeOutDown}@-webkit-keyframes fadeOutDownBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}}@keyframes fadeOutDownBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}}.animate__fadeOutDownBig{-webkit-animation-name:fadeOutDownBig;animation-name:fadeOutDownBig}@-webkit-keyframes fadeOutLeft{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes fadeOutLeft{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.animate__fadeOutLeft{-webkit-animation-name:fadeOutLeft;animation-name:fadeOutLeft}@-webkit-keyframes fadeOutLeftBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}}@keyframes fadeOutLeftBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}}.animate__fadeOutLeftBig{-webkit-animation-name:fadeOutLeftBig;animation-name:fadeOutLeftBig}@-webkit-keyframes fadeOutRight{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes fadeOutRight{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.animate__fadeOutRight{-webkit-animation-name:fadeOutRight;animation-name:fadeOutRight}@-webkit-keyframes fadeOutRightBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}}@keyframes fadeOutRightBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}}.animate__fadeOutRightBig{-webkit-animation-name:fadeOutRightBig;animation-name:fadeOutRightBig}@-webkit-keyframes fadeOutUp{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes fadeOutUp{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}.animate__fadeOutUp{-webkit-animation-name:fadeOutUp;animation-name:fadeOutUp}@-webkit-keyframes fadeOutUpBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}}@keyframes fadeOutUpBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}}.animate__fadeOutUpBig{-webkit-animation-name:fadeOutUpBig;animation-name:fadeOutUpBig}@-webkit-keyframes fadeOutTopLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}}@keyframes fadeOutTopLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}}.animate__fadeOutTopLeft{-webkit-animation-name:fadeOutTopLeft;animation-name:fadeOutTopLeft}@-webkit-keyframes fadeOutTopRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}}@keyframes fadeOutTopRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}}.animate__fadeOutTopRight{-webkit-animation-name:fadeOutTopRight;animation-name:fadeOutTopRight}@-webkit-keyframes fadeOutBottomRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}}@keyframes fadeOutBottomRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}}.animate__fadeOutBottomRight{-webkit-animation-name:fadeOutBottomRight;animation-name:fadeOutBottomRight}@-webkit-keyframes fadeOutBottomLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}}@keyframes fadeOutBottomLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}}.animate__fadeOutBottomLeft{-webkit-animation-name:fadeOutBottomLeft;animation-name:fadeOutBottomLeft}@-webkit-keyframes flip{0%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,-360deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(-360deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-190deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-170deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) scale3d(.95,.95,.95) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scale3d(.95,.95,.95) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}to{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}@keyframes flip{0%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,-360deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(-360deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-190deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-170deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) scale3d(.95,.95,.95) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scale3d(.95,.95,.95) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}to{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}.animate__animated.animate__flip{-webkit-backface-visibility:visible;backface-visibility:visible;-webkit-animation-name:flip;animation-name:flip}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotateX(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotateX(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes flipInX{0%{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotateX(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotateX(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}.animate__flipInX{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInX;animation-name:flipInX}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-20deg);transform:perspective(400px) rotateY(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(0,1,0,10deg);transform:perspective(400px) rotateY(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-5deg);transform:perspective(400px) rotateY(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes flipInY{0%{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-20deg);transform:perspective(400px) rotateY(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(0,1,0,10deg);transform:perspective(400px) rotateY(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-5deg);transform:perspective(400px) rotateY(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}.animate__flipInY{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInY;animation-name:flipInY}@-webkit-keyframes flipOutX{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}.animate__flipOutX{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-animation-name:flipOutX;animation-name:flipOutX;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-15deg);transform:perspective(400px) rotateY(-15deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-15deg);transform:perspective(400px) rotateY(-15deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}.animate__flipOutY{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipOutY;animation-name:flipOutY}@-webkit-keyframes lightSpeedInRight{0%{-webkit-transform:translate3d(100%,0,0) skewX(-30deg);transform:translate3d(100%,0,0) skew(-30deg);opacity:0}60%{-webkit-transform:skewX(20deg);transform:skew(20deg);opacity:1}80%{-webkit-transform:skewX(-5deg);transform:skew(-5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes lightSpeedInRight{0%{-webkit-transform:translate3d(100%,0,0) skewX(-30deg);transform:translate3d(100%,0,0) skew(-30deg);opacity:0}60%{-webkit-transform:skewX(20deg);transform:skew(20deg);opacity:1}80%{-webkit-transform:skewX(-5deg);transform:skew(-5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__lightSpeedInRight{-webkit-animation-name:lightSpeedInRight;animation-name:lightSpeedInRight;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedInLeft{0%{-webkit-transform:translate3d(-100%,0,0) skewX(30deg);transform:translate3d(-100%,0,0) skew(30deg);opacity:0}60%{-webkit-transform:skewX(-20deg);transform:skew(-20deg);opacity:1}80%{-webkit-transform:skewX(5deg);transform:skew(5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes lightSpeedInLeft{0%{-webkit-transform:translate3d(-100%,0,0) skewX(30deg);transform:translate3d(-100%,0,0) skew(30deg);opacity:0}60%{-webkit-transform:skewX(-20deg);transform:skew(-20deg);opacity:1}80%{-webkit-transform:skewX(5deg);transform:skew(5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__lightSpeedInLeft{-webkit-animation-name:lightSpeedInLeft;animation-name:lightSpeedInLeft;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedOutRight{0%{opacity:1}to{-webkit-transform:translate3d(100%,0,0) skewX(30deg);transform:translate3d(100%,0,0) skew(30deg);opacity:0}}@keyframes lightSpeedOutRight{0%{opacity:1}to{-webkit-transform:translate3d(100%,0,0) skewX(30deg);transform:translate3d(100%,0,0) skew(30deg);opacity:0}}.animate__lightSpeedOutRight{-webkit-animation-name:lightSpeedOutRight;animation-name:lightSpeedOutRight;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}@-webkit-keyframes lightSpeedOutLeft{0%{opacity:1}to{-webkit-transform:translate3d(-100%,0,0) skewX(-30deg);transform:translate3d(-100%,0,0) skew(-30deg);opacity:0}}@keyframes lightSpeedOutLeft{0%{opacity:1}to{-webkit-transform:translate3d(-100%,0,0) skewX(-30deg);transform:translate3d(-100%,0,0) skew(-30deg);opacity:0}}.animate__lightSpeedOutLeft{-webkit-animation-name:lightSpeedOutLeft;animation-name:lightSpeedOutLeft;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}@-webkit-keyframes rotateIn{0%{-webkit-transform:rotate3d(0,0,1,-200deg);transform:rotate3d(0,0,1,-200deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateIn{0%{-webkit-transform:rotate3d(0,0,1,-200deg);transform:rotate3d(0,0,1,-200deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateIn{-webkit-animation-name:rotateIn;animation-name:rotateIn;-webkit-transform-origin:center;transform-origin:center}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInDownLeft{0%{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInDownRight{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInDownRight{-webkit-animation-name:rotateInDownRight;animation-name:rotateInDownRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInUpLeft{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform:rotate3d(0,0,1,-90deg);transform:rotate3d(0,0,1,-90deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInUpRight{0%{-webkit-transform:rotate3d(0,0,1,-90deg);transform:rotate3d(0,0,1,-90deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInUpRight{-webkit-animation-name:rotateInUpRight;animation-name:rotateInUpRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes rotateOut{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,200deg);transform:rotate3d(0,0,1,200deg);opacity:0}}@keyframes rotateOut{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,200deg);transform:rotate3d(0,0,1,200deg);opacity:0}}.animate__rotateOut{-webkit-animation-name:rotateOut;animation-name:rotateOut;-webkit-transform-origin:center;transform-origin:center}@-webkit-keyframes rotateOutDownLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}}@keyframes rotateOutDownLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}}.animate__rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateOutDownRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}@keyframes rotateOutDownRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}.animate__rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes rotateOutUpLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}@keyframes rotateOutUpLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}.animate__rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateOutUpRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,90deg);transform:rotate3d(0,0,1,90deg);opacity:0}}@keyframes rotateOutUpRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,90deg);transform:rotate3d(0,0,1,90deg);opacity:0}}.animate__rotateOutUpRight{-webkit-animation-name:rotateOutUpRight;animation-name:rotateOutUpRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes hinge{0%{-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate3d(0,0,1,80deg);transform:rotate3d(0,0,1,80deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%,80%{-webkit-transform:rotate3d(0,0,1,60deg);transform:rotate3d(0,0,1,60deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}to{-webkit-transform:translate3d(0,700px,0);transform:translate3d(0,700px,0);opacity:0}}@keyframes hinge{0%{-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate3d(0,0,1,80deg);transform:rotate3d(0,0,1,80deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%,80%{-webkit-transform:rotate3d(0,0,1,60deg);transform:rotate3d(0,0,1,60deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}to{-webkit-transform:translate3d(0,700px,0);transform:translate3d(0,700px,0);opacity:0}}.animate__hinge{-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-duration:calc(var(--animate-duration) * 2);animation-duration:calc(var(--animate-duration) * 2);-webkit-animation-name:hinge;animation-name:hinge;-webkit-transform-origin:top left;transform-origin:top left}@-webkit-keyframes jackInTheBox{0%{opacity:0;-webkit-transform:scale(.1) rotate(30deg);transform:scale(.1) rotate(30deg);-webkit-transform-origin:center bottom;transform-origin:center bottom}50%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}70%{-webkit-transform:rotate(3deg);transform:rotate(3deg)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes jackInTheBox{0%{opacity:0;-webkit-transform:scale(.1) rotate(30deg);transform:scale(.1) rotate(30deg);-webkit-transform-origin:center bottom;transform-origin:center bottom}50%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}70%{-webkit-transform:rotate(3deg);transform:rotate(3deg)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.animate__jackInTheBox{-webkit-animation-name:jackInTheBox;animation-name:jackInTheBox}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg);transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes rollIn{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg);transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__rollIn{-webkit-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg);transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg)}}@keyframes rollOut{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg);transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg)}}.animate__rollOut{-webkit-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}.animate__zoomIn{-webkit-animation-name:zoomIn;animation-name:zoomIn}@-webkit-keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInDown{-webkit-animation-name:zoomInDown;animation-name:zoomInDown}@-webkit-keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(10px,0,0);transform:scale3d(.475,.475,.475) translate3d(10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(10px,0,0);transform:scale3d(.475,.475,.475) translate3d(10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInLeft{-webkit-animation-name:zoomInLeft;animation-name:zoomInLeft}@-webkit-keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInRight{-webkit-animation-name:zoomInRight;animation-name:zoomInRight}@-webkit-keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInUp{-webkit-animation-name:zoomInUp;animation-name:zoomInUp}@-webkit-keyframes zoomOut{0%{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}.animate__zoomOut{-webkit-animation-name:zoomOut;animation-name:zoomOut}@-webkit-keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomOutDown{-webkit-animation-name:zoomOutDown;animation-name:zoomOutDown;-webkit-transform-origin:center bottom;transform-origin:center bottom}@-webkit-keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(42px,0,0);transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(-2000px,0,0);transform:scale(.1) translate3d(-2000px,0,0)}}@keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(42px,0,0);transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(-2000px,0,0);transform:scale(.1) translate3d(-2000px,0,0)}}.animate__zoomOutLeft{-webkit-animation-name:zoomOutLeft;animation-name:zoomOutLeft;-webkit-transform-origin:left center;transform-origin:left center}@-webkit-keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-42px,0,0);transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(2000px,0,0);transform:scale(.1) translate3d(2000px,0,0)}}@keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-42px,0,0);transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(2000px,0,0);transform:scale(.1) translate3d(2000px,0,0)}}.animate__zoomOutRight{-webkit-animation-name:zoomOutRight;animation-name:zoomOutRight;-webkit-transform-origin:right center;transform-origin:right center}@-webkit-keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomOutUp{-webkit-animation-name:zoomOutUp;animation-name:zoomOutUp;-webkit-transform-origin:center bottom;transform-origin:center bottom}@-webkit-keyframes slideInDown{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInDown{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInDown{-webkit-animation-name:slideInDown;animation-name:slideInDown}@-webkit-keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInLeft{-webkit-animation-name:slideInLeft;animation-name:slideInLeft}@-webkit-keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInRight{-webkit-animation-name:slideInRight;animation-name:slideInRight}@-webkit-keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInUp{-webkit-animation-name:slideInUp;animation-name:slideInUp}@-webkit-keyframes slideOutDown{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes slideOutDown{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}.animate__slideOutDown{-webkit-animation-name:slideOutDown;animation-name:slideOutDown}@-webkit-keyframes slideOutLeft{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes slideOutLeft{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.animate__slideOutLeft{-webkit-animation-name:slideOutLeft;animation-name:slideOutLeft}@-webkit-keyframes slideOutRight{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes slideOutRight{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.animate__slideOutRight{-webkit-animation-name:slideOutRight;animation-name:slideOutRight}@-webkit-keyframes slideOutUp{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes slideOutUp{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}.animate__slideOutUp{-webkit-animation-name:slideOutUp;animation-name:slideOutUp}span[data-v-d4e41a56]{top:-34px;left:0}.dropdown-menu[data-v-ebeddf70]{right:1rem;min-width:200px}.dropdown-item.disabled[data-v-ebeddf70],.dropdown-item[data-v-ebeddf70]:disabled{opacity:.7}.confirmDelete[data-v-ebeddf70]{padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x)}.slide-fade-leave-active[data-v-61d5584d],.slide-fade-enter-active[data-v-61d5584d]{transition:all .2s cubic-bezier(.82,.58,.17,1.3)}.slide-fade-enter-from[data-v-61d5584d],.slide-fade-leave-to[data-v-61d5584d]{transform:translateY(20px);opacity:0;filter:blur(3px)}.subMenuBtn.active[data-v-61d5584d]{background-color:#ffffff20}.peerCard[data-v-61d5584d]{transition:box-shadow .1s cubic-bezier(.82,.58,.17,.9)}.peerCard[data-v-61d5584d]:hover{box-shadow:var(--bs-box-shadow)!important}.peerNav .nav-link{&.active[data-v-4fe6960d]{background-color:#efefef}}th[data-v-4fe6960d],td[data-v-4fe6960d]{background-color:transparent!important}@media screen and (max-width: 576px){.titleBtn[data-v-4fe6960d]{flex-basis:100%}} + */:root{--animate-duration: 1s;--animate-delay: 1s;--animate-repeat: 1}.animate__animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-duration:var(--animate-duration);animation-duration:var(--animate-duration);-webkit-animation-fill-mode:both;animation-fill-mode:both}.animate__animated.animate__infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animate__animated.animate__repeat-1{-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-iteration-count:var(--animate-repeat);animation-iteration-count:var(--animate-repeat)}.animate__animated.animate__repeat-2{-webkit-animation-iteration-count:2;animation-iteration-count:2;-webkit-animation-iteration-count:calc(var(--animate-repeat) * 2);animation-iteration-count:calc(var(--animate-repeat) * 2)}.animate__animated.animate__repeat-3{-webkit-animation-iteration-count:3;animation-iteration-count:3;-webkit-animation-iteration-count:calc(var(--animate-repeat) * 3);animation-iteration-count:calc(var(--animate-repeat) * 3)}.animate__animated.animate__delay-1s{-webkit-animation-delay:1s;animation-delay:1s;-webkit-animation-delay:var(--animate-delay);animation-delay:var(--animate-delay)}.animate__animated.animate__delay-2s{-webkit-animation-delay:2s;animation-delay:2s;-webkit-animation-delay:calc(var(--animate-delay) * 2);animation-delay:calc(var(--animate-delay) * 2)}.animate__animated.animate__delay-3s{-webkit-animation-delay:3s;animation-delay:3s;-webkit-animation-delay:calc(var(--animate-delay) * 3);animation-delay:calc(var(--animate-delay) * 3)}.animate__animated.animate__delay-4s{-webkit-animation-delay:4s;animation-delay:4s;-webkit-animation-delay:calc(var(--animate-delay) * 4);animation-delay:calc(var(--animate-delay) * 4)}.animate__animated.animate__delay-5s{-webkit-animation-delay:5s;animation-delay:5s;-webkit-animation-delay:calc(var(--animate-delay) * 5);animation-delay:calc(var(--animate-delay) * 5)}.animate__animated.animate__faster{-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-animation-duration:calc(var(--animate-duration) / 2);animation-duration:calc(var(--animate-duration) / 2)}.animate__animated.animate__fast{-webkit-animation-duration:.8s;animation-duration:.8s;-webkit-animation-duration:calc(var(--animate-duration) * .8);animation-duration:calc(var(--animate-duration) * .8)}.animate__animated.animate__slow{-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-duration:calc(var(--animate-duration) * 2);animation-duration:calc(var(--animate-duration) * 2)}.animate__animated.animate__slower{-webkit-animation-duration:3s;animation-duration:3s;-webkit-animation-duration:calc(var(--animate-duration) * 3);animation-duration:calc(var(--animate-duration) * 3)}@media print,(prefers-reduced-motion: reduce){.animate__animated{-webkit-animation-duration:1ms!important;animation-duration:1ms!important;-webkit-transition-duration:1ms!important;transition-duration:1ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important}.animate__animated[class*=Out]{opacity:0}}@-webkit-keyframes bounce{0%,20%,53%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}40%,43%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-30px,0) scaleY(1.1);transform:translate3d(0,-30px,0) scaleY(1.1)}70%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-15px,0) scaleY(1.05);transform:translate3d(0,-15px,0) scaleY(1.05)}80%{-webkit-transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0) scaleY(.95);transform:translateZ(0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-4px,0) scaleY(1.02);transform:translate3d(0,-4px,0) scaleY(1.02)}}@keyframes bounce{0%,20%,53%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}40%,43%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-30px,0) scaleY(1.1);transform:translate3d(0,-30px,0) scaleY(1.1)}70%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-15px,0) scaleY(1.05);transform:translate3d(0,-15px,0) scaleY(1.05)}80%{-webkit-transition-timing-function:cubic-bezier(.215,.61,.355,1);transition-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translate3d(0,0,0) scaleY(.95);transform:translateZ(0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-4px,0) scaleY(1.02);transform:translate3d(0,-4px,0) scaleY(1.02)}}.animate__bounce{-webkit-animation-name:bounce;animation-name:bounce;-webkit-transform-origin:center bottom;transform-origin:center bottom}@-webkit-keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}.animate__flash{-webkit-animation-name:flash;animation-name:flash}@-webkit-keyframes pulse{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}50%{-webkit-transform:scale3d(1.05,1.05,1.05);transform:scale3d(1.05,1.05,1.05)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes pulse{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}50%{-webkit-transform:scale3d(1.05,1.05,1.05);transform:scale3d(1.05,1.05,1.05)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__pulse{-webkit-animation-name:pulse;animation-name:pulse;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}@-webkit-keyframes rubberBand{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}30%{-webkit-transform:scale3d(1.25,.75,1);transform:scale3d(1.25,.75,1)}40%{-webkit-transform:scale3d(.75,1.25,1);transform:scale3d(.75,1.25,1)}50%{-webkit-transform:scale3d(1.15,.85,1);transform:scale3d(1.15,.85,1)}65%{-webkit-transform:scale3d(.95,1.05,1);transform:scale3d(.95,1.05,1)}75%{-webkit-transform:scale3d(1.05,.95,1);transform:scale3d(1.05,.95,1)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes rubberBand{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}30%{-webkit-transform:scale3d(1.25,.75,1);transform:scale3d(1.25,.75,1)}40%{-webkit-transform:scale3d(.75,1.25,1);transform:scale3d(.75,1.25,1)}50%{-webkit-transform:scale3d(1.15,.85,1);transform:scale3d(1.15,.85,1)}65%{-webkit-transform:scale3d(.95,1.05,1);transform:scale3d(.95,1.05,1)}75%{-webkit-transform:scale3d(1.05,.95,1);transform:scale3d(1.05,.95,1)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__rubberBand{-webkit-animation-name:rubberBand;animation-name:rubberBand}@-webkit-keyframes shakeX{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0)}20%,40%,60%,80%{-webkit-transform:translate3d(10px,0,0);transform:translate3d(10px,0,0)}}@keyframes shakeX{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0)}20%,40%,60%,80%{-webkit-transform:translate3d(10px,0,0);transform:translate3d(10px,0,0)}}.animate__shakeX{-webkit-animation-name:shakeX;animation-name:shakeX}@-webkit-keyframes shakeY{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(0,-10px,0);transform:translate3d(0,-10px,0)}20%,40%,60%,80%{-webkit-transform:translate3d(0,10px,0);transform:translate3d(0,10px,0)}}@keyframes shakeY{0%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}10%,30%,50%,70%,90%{-webkit-transform:translate3d(0,-10px,0);transform:translate3d(0,-10px,0)}20%,40%,60%,80%{-webkit-transform:translate3d(0,10px,0);transform:translate3d(0,10px,0)}}.animate__shakeY{-webkit-animation-name:shakeY;animation-name:shakeY}@-webkit-keyframes headShake{0%{-webkit-transform:translateX(0);transform:translate(0)}6.5%{-webkit-transform:translateX(-6px) rotateY(-9deg);transform:translate(-6px) rotateY(-9deg)}18.5%{-webkit-transform:translateX(5px) rotateY(7deg);transform:translate(5px) rotateY(7deg)}31.5%{-webkit-transform:translateX(-3px) rotateY(-5deg);transform:translate(-3px) rotateY(-5deg)}43.5%{-webkit-transform:translateX(2px) rotateY(3deg);transform:translate(2px) rotateY(3deg)}50%{-webkit-transform:translateX(0);transform:translate(0)}}@keyframes headShake{0%{-webkit-transform:translateX(0);transform:translate(0)}6.5%{-webkit-transform:translateX(-6px) rotateY(-9deg);transform:translate(-6px) rotateY(-9deg)}18.5%{-webkit-transform:translateX(5px) rotateY(7deg);transform:translate(5px) rotateY(7deg)}31.5%{-webkit-transform:translateX(-3px) rotateY(-5deg);transform:translate(-3px) rotateY(-5deg)}43.5%{-webkit-transform:translateX(2px) rotateY(3deg);transform:translate(2px) rotateY(3deg)}50%{-webkit-transform:translateX(0);transform:translate(0)}}.animate__headShake{-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-name:headShake;animation-name:headShake}@-webkit-keyframes swing{20%{-webkit-transform:rotate3d(0,0,1,15deg);transform:rotate3d(0,0,1,15deg)}40%{-webkit-transform:rotate3d(0,0,1,-10deg);transform:rotate3d(0,0,1,-10deg)}60%{-webkit-transform:rotate3d(0,0,1,5deg);transform:rotate3d(0,0,1,5deg)}80%{-webkit-transform:rotate3d(0,0,1,-5deg);transform:rotate3d(0,0,1,-5deg)}to{-webkit-transform:rotate3d(0,0,1,0deg);transform:rotate3d(0,0,1,0)}}@keyframes swing{20%{-webkit-transform:rotate3d(0,0,1,15deg);transform:rotate3d(0,0,1,15deg)}40%{-webkit-transform:rotate3d(0,0,1,-10deg);transform:rotate3d(0,0,1,-10deg)}60%{-webkit-transform:rotate3d(0,0,1,5deg);transform:rotate3d(0,0,1,5deg)}80%{-webkit-transform:rotate3d(0,0,1,-5deg);transform:rotate3d(0,0,1,-5deg)}to{-webkit-transform:rotate3d(0,0,1,0deg);transform:rotate3d(0,0,1,0)}}.animate__swing{-webkit-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;animation-name:swing}@-webkit-keyframes tada{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}10%,20%{-webkit-transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg);transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg)}30%,50%,70%,90%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)}40%,60%,80%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes tada{0%{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}10%,20%{-webkit-transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg);transform:scale3d(.9,.9,.9) rotate3d(0,0,1,-3deg)}30%,50%,70%,90%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,3deg)}40%,60%,80%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg);transform:scale3d(1.1,1.1,1.1) rotate3d(0,0,1,-3deg)}to{-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__tada{-webkit-animation-name:tada;animation-name:tada}@-webkit-keyframes wobble{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}15%{-webkit-transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg);transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{-webkit-transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg);transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{-webkit-transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg);transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{-webkit-transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg);transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{-webkit-transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg);transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes wobble{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}15%{-webkit-transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg);transform:translate3d(-25%,0,0) rotate3d(0,0,1,-5deg)}30%{-webkit-transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg);transform:translate3d(20%,0,0) rotate3d(0,0,1,3deg)}45%{-webkit-transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg);transform:translate3d(-15%,0,0) rotate3d(0,0,1,-3deg)}60%{-webkit-transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg);transform:translate3d(10%,0,0) rotate3d(0,0,1,2deg)}75%{-webkit-transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg);transform:translate3d(-5%,0,0) rotate3d(0,0,1,-1deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__wobble{-webkit-animation-name:wobble;animation-name:wobble}@-webkit-keyframes jello{0%,11.1%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}22.2%{-webkit-transform:skewX(-12.5deg) skewY(-12.5deg);transform:skew(-12.5deg) skewY(-12.5deg)}33.3%{-webkit-transform:skewX(6.25deg) skewY(6.25deg);transform:skew(6.25deg) skewY(6.25deg)}44.4%{-webkit-transform:skewX(-3.125deg) skewY(-3.125deg);transform:skew(-3.125deg) skewY(-3.125deg)}55.5%{-webkit-transform:skewX(1.5625deg) skewY(1.5625deg);transform:skew(1.5625deg) skewY(1.5625deg)}66.6%{-webkit-transform:skewX(-.78125deg) skewY(-.78125deg);transform:skew(-.78125deg) skewY(-.78125deg)}77.7%{-webkit-transform:skewX(.390625deg) skewY(.390625deg);transform:skew(.390625deg) skewY(.390625deg)}88.8%{-webkit-transform:skewX(-.1953125deg) skewY(-.1953125deg);transform:skew(-.1953125deg) skewY(-.1953125deg)}}@keyframes jello{0%,11.1%,to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}22.2%{-webkit-transform:skewX(-12.5deg) skewY(-12.5deg);transform:skew(-12.5deg) skewY(-12.5deg)}33.3%{-webkit-transform:skewX(6.25deg) skewY(6.25deg);transform:skew(6.25deg) skewY(6.25deg)}44.4%{-webkit-transform:skewX(-3.125deg) skewY(-3.125deg);transform:skew(-3.125deg) skewY(-3.125deg)}55.5%{-webkit-transform:skewX(1.5625deg) skewY(1.5625deg);transform:skew(1.5625deg) skewY(1.5625deg)}66.6%{-webkit-transform:skewX(-.78125deg) skewY(-.78125deg);transform:skew(-.78125deg) skewY(-.78125deg)}77.7%{-webkit-transform:skewX(.390625deg) skewY(.390625deg);transform:skew(.390625deg) skewY(.390625deg)}88.8%{-webkit-transform:skewX(-.1953125deg) skewY(-.1953125deg);transform:skew(-.1953125deg) skewY(-.1953125deg)}}.animate__jello{-webkit-animation-name:jello;animation-name:jello;-webkit-transform-origin:center;transform-origin:center}@-webkit-keyframes heartBeat{0%{-webkit-transform:scale(1);transform:scale(1)}14%{-webkit-transform:scale(1.3);transform:scale(1.3)}28%{-webkit-transform:scale(1);transform:scale(1)}42%{-webkit-transform:scale(1.3);transform:scale(1.3)}70%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes heartBeat{0%{-webkit-transform:scale(1);transform:scale(1)}14%{-webkit-transform:scale(1.3);transform:scale(1.3)}28%{-webkit-transform:scale(1);transform:scale(1)}42%{-webkit-transform:scale(1.3);transform:scale(1.3)}70%{-webkit-transform:scale(1);transform:scale(1)}}.animate__heartBeat{-webkit-animation-name:heartBeat;animation-name:heartBeat;-webkit-animation-duration:1.3s;animation-duration:1.3s;-webkit-animation-duration:calc(var(--animate-duration) * 1.3);animation-duration:calc(var(--animate-duration) * 1.3);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}@-webkit-keyframes backInDown{0%{-webkit-transform:translateY(-1200px) scale(.7);transform:translateY(-1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInDown{0%{-webkit-transform:translateY(-1200px) scale(.7);transform:translateY(-1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInDown{-webkit-animation-name:backInDown;animation-name:backInDown}@-webkit-keyframes backInLeft{0%{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInLeft{0%{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInLeft{-webkit-animation-name:backInLeft;animation-name:backInLeft}@-webkit-keyframes backInRight{0%{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInRight{0%{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}80%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInRight{-webkit-animation-name:backInRight;animation-name:backInRight}@-webkit-keyframes backInUp{0%{-webkit-transform:translateY(1200px) scale(.7);transform:translateY(1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes backInUp{0%{-webkit-transform:translateY(1200px) scale(.7);transform:translateY(1200px) scale(.7);opacity:.7}80%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.animate__backInUp{-webkit-animation-name:backInUp;animation-name:backInUp}@-webkit-keyframes backOutDown{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(700px) scale(.7);transform:translateY(700px) scale(.7);opacity:.7}}@keyframes backOutDown{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(700px) scale(.7);transform:translateY(700px) scale(.7);opacity:.7}}.animate__backOutDown{-webkit-animation-name:backOutDown;animation-name:backOutDown}@-webkit-keyframes backOutLeft{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}}@keyframes backOutLeft{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(-2000px) scale(.7);transform:translate(-2000px) scale(.7);opacity:.7}}.animate__backOutLeft{-webkit-animation-name:backOutLeft;animation-name:backOutLeft}@-webkit-keyframes backOutRight{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}}@keyframes backOutRight{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateX(0px) scale(.7);transform:translate(0) scale(.7);opacity:.7}to{-webkit-transform:translateX(2000px) scale(.7);transform:translate(2000px) scale(.7);opacity:.7}}.animate__backOutRight{-webkit-animation-name:backOutRight;animation-name:backOutRight}@-webkit-keyframes backOutUp{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(-700px) scale(.7);transform:translateY(-700px) scale(.7);opacity:.7}}@keyframes backOutUp{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}20%{-webkit-transform:translateY(0px) scale(.7);transform:translateY(0) scale(.7);opacity:.7}to{-webkit-transform:translateY(-700px) scale(.7);transform:translateY(-700px) scale(.7);opacity:.7}}.animate__backOutUp{-webkit-animation-name:backOutUp;animation-name:backOutUp}@-webkit-keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}60%{opacity:1;-webkit-transform:scale3d(1.03,1.03,1.03);transform:scale3d(1.03,1.03,1.03)}80%{-webkit-transform:scale3d(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}@keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}60%{opacity:1;-webkit-transform:scale3d(1.03,1.03,1.03);transform:scale3d(1.03,1.03,1.03)}80%{-webkit-transform:scale3d(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scale3d(1,1,1);transform:scaleZ(1)}}.animate__bounceIn{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInDown{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,-3000px,0) scaleY(3);transform:translate3d(0,-3000px,0) scaleY(3)}60%{opacity:1;-webkit-transform:translate3d(0,25px,0) scaleY(.9);transform:translate3d(0,25px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,-10px,0) scaleY(.95);transform:translate3d(0,-10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,5px,0) scaleY(.985);transform:translate3d(0,5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInDown{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,-3000px,0) scaleY(3);transform:translate3d(0,-3000px,0) scaleY(3)}60%{opacity:1;-webkit-transform:translate3d(0,25px,0) scaleY(.9);transform:translate3d(0,25px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,-10px,0) scaleY(.95);transform:translate3d(0,-10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,5px,0) scaleY(.985);transform:translate3d(0,5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInDown{-webkit-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(-3000px,0,0) scaleX(3);transform:translate3d(-3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(25px,0,0) scaleX(1);transform:translate3d(25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(-10px,0,0) scaleX(.98);transform:translate3d(-10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(5px,0,0) scaleX(.995);transform:translate3d(5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(-3000px,0,0) scaleX(3);transform:translate3d(-3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(25px,0,0) scaleX(1);transform:translate3d(25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(-10px,0,0) scaleX(.98);transform:translate3d(-10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(5px,0,0) scaleX(.995);transform:translate3d(5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInLeft{-webkit-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(3000px,0,0) scaleX(3);transform:translate3d(3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(-25px,0,0) scaleX(1);transform:translate3d(-25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(10px,0,0) scaleX(.98);transform:translate3d(10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(-5px,0,0) scaleX(.995);transform:translate3d(-5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(3000px,0,0) scaleX(3);transform:translate3d(3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(-25px,0,0) scaleX(1);transform:translate3d(-25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(10px,0,0) scaleX(.98);transform:translate3d(10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(-5px,0,0) scaleX(.995);transform:translate3d(-5px,0,0) scaleX(.995)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInRight{-webkit-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceInUp{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,3000px,0) scaleY(5);transform:translate3d(0,3000px,0) scaleY(5)}60%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,10px,0) scaleY(.95);transform:translate3d(0,10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-5px,0) scaleY(.985);transform:translate3d(0,-5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes bounceInUp{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,3000px,0) scaleY(5);transform:translate3d(0,3000px,0) scaleY(5)}60%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,10px,0) scaleY(.95);transform:translate3d(0,10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-5px,0) scaleY(.985);transform:translate3d(0,-5px,0) scaleY(.985)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__bounceInUp{-webkit-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceOut{20%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}50%,55%{opacity:1;-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}to{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}}@keyframes bounceOut{20%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}50%,55%{opacity:1;-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}to{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}}.animate__bounceOut{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-animation-name:bounceOut;animation-name:bounceOut}@-webkit-keyframes bounceOutDown{20%{-webkit-transform:translate3d(0,10px,0) scaleY(.985);transform:translate3d(0,10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,2000px,0) scaleY(3);transform:translate3d(0,2000px,0) scaleY(3)}}@keyframes bounceOutDown{20%{-webkit-transform:translate3d(0,10px,0) scaleY(.985);transform:translate3d(0,10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,2000px,0) scaleY(3);transform:translate3d(0,2000px,0) scaleY(3)}}.animate__bounceOutDown{-webkit-animation-name:bounceOutDown;animation-name:bounceOutDown}@-webkit-keyframes bounceOutLeft{20%{opacity:1;-webkit-transform:translate3d(20px,0,0) scaleX(.9);transform:translate3d(20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0) scaleX(2);transform:translate3d(-2000px,0,0) scaleX(2)}}@keyframes bounceOutLeft{20%{opacity:1;-webkit-transform:translate3d(20px,0,0) scaleX(.9);transform:translate3d(20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0) scaleX(2);transform:translate3d(-2000px,0,0) scaleX(2)}}.animate__bounceOutLeft{-webkit-animation-name:bounceOutLeft;animation-name:bounceOutLeft}@-webkit-keyframes bounceOutRight{20%{opacity:1;-webkit-transform:translate3d(-20px,0,0) scaleX(.9);transform:translate3d(-20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(2000px,0,0) scaleX(2);transform:translate3d(2000px,0,0) scaleX(2)}}@keyframes bounceOutRight{20%{opacity:1;-webkit-transform:translate3d(-20px,0,0) scaleX(.9);transform:translate3d(-20px,0,0) scaleX(.9)}to{opacity:0;-webkit-transform:translate3d(2000px,0,0) scaleX(2);transform:translate3d(2000px,0,0) scaleX(2)}}.animate__bounceOutRight{-webkit-animation-name:bounceOutRight;animation-name:bounceOutRight}@-webkit-keyframes bounceOutUp{20%{-webkit-transform:translate3d(0,-10px,0) scaleY(.985);transform:translate3d(0,-10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,20px,0) scaleY(.9);transform:translate3d(0,20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0) scaleY(3);transform:translate3d(0,-2000px,0) scaleY(3)}}@keyframes bounceOutUp{20%{-webkit-transform:translate3d(0,-10px,0) scaleY(.985);transform:translate3d(0,-10px,0) scaleY(.985)}40%,45%{opacity:1;-webkit-transform:translate3d(0,20px,0) scaleY(.9);transform:translate3d(0,20px,0) scaleY(.9)}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0) scaleY(3);transform:translate3d(0,-2000px,0) scaleY(3)}}.animate__bounceOutUp{-webkit-animation-name:bounceOutUp;animation-name:bounceOutUp}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate__fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInDownBig{-webkit-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInRightBig{-webkit-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInUpBig{-webkit-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeInTopLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInTopLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInTopLeft{-webkit-animation-name:fadeInTopLeft;animation-name:fadeInTopLeft}@-webkit-keyframes fadeInTopRight{0%{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInTopRight{0%{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInTopRight{-webkit-animation-name:fadeInTopRight;animation-name:fadeInTopRight}@-webkit-keyframes fadeInBottomLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInBottomLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInBottomLeft{-webkit-animation-name:fadeInBottomLeft;animation-name:fadeInBottomLeft}@-webkit-keyframes fadeInBottomRight{0%{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fadeInBottomRight{0%{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__fadeInBottomRight{-webkit-animation-name:fadeInBottomRight;animation-name:fadeInBottomRight}@-webkit-keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.animate__fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutDown{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes fadeOutDown{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}.animate__fadeOutDown{-webkit-animation-name:fadeOutDown;animation-name:fadeOutDown}@-webkit-keyframes fadeOutDownBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}}@keyframes fadeOutDownBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}}.animate__fadeOutDownBig{-webkit-animation-name:fadeOutDownBig;animation-name:fadeOutDownBig}@-webkit-keyframes fadeOutLeft{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes fadeOutLeft{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.animate__fadeOutLeft{-webkit-animation-name:fadeOutLeft;animation-name:fadeOutLeft}@-webkit-keyframes fadeOutLeftBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}}@keyframes fadeOutLeftBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}}.animate__fadeOutLeftBig{-webkit-animation-name:fadeOutLeftBig;animation-name:fadeOutLeftBig}@-webkit-keyframes fadeOutRight{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes fadeOutRight{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.animate__fadeOutRight{-webkit-animation-name:fadeOutRight;animation-name:fadeOutRight}@-webkit-keyframes fadeOutRightBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}}@keyframes fadeOutRightBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}}.animate__fadeOutRightBig{-webkit-animation-name:fadeOutRightBig;animation-name:fadeOutRightBig}@-webkit-keyframes fadeOutUp{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes fadeOutUp{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}.animate__fadeOutUp{-webkit-animation-name:fadeOutUp;animation-name:fadeOutUp}@-webkit-keyframes fadeOutUpBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}}@keyframes fadeOutUpBig{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}}.animate__fadeOutUpBig{-webkit-animation-name:fadeOutUpBig;animation-name:fadeOutUpBig}@-webkit-keyframes fadeOutTopLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}}@keyframes fadeOutTopLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,-100%,0);transform:translate3d(-100%,-100%,0)}}.animate__fadeOutTopLeft{-webkit-animation-name:fadeOutTopLeft;animation-name:fadeOutTopLeft}@-webkit-keyframes fadeOutTopRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}}@keyframes fadeOutTopRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,-100%,0);transform:translate3d(100%,-100%,0)}}.animate__fadeOutTopRight{-webkit-animation-name:fadeOutTopRight;animation-name:fadeOutTopRight}@-webkit-keyframes fadeOutBottomRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}}@keyframes fadeOutBottomRight{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(100%,100%,0);transform:translate3d(100%,100%,0)}}.animate__fadeOutBottomRight{-webkit-animation-name:fadeOutBottomRight;animation-name:fadeOutBottomRight}@-webkit-keyframes fadeOutBottomLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}}@keyframes fadeOutBottomLeft{0%{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{opacity:0;-webkit-transform:translate3d(-100%,100%,0);transform:translate3d(-100%,100%,0)}}.animate__fadeOutBottomLeft{-webkit-animation-name:fadeOutBottomLeft;animation-name:fadeOutBottomLeft}@-webkit-keyframes flip{0%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,-360deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(-360deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-190deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-170deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) scale3d(.95,.95,.95) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scale3d(.95,.95,.95) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}to{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}@keyframes flip{0%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,-360deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(-360deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-190deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-190deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,150px) rotate3d(0,1,0,-170deg);transform:perspective(400px) scaleZ(1) translateZ(150px) rotateY(-170deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) scale3d(.95,.95,.95) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scale3d(.95,.95,.95) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}to{-webkit-transform:perspective(400px) scale3d(1,1,1) translate3d(0,0,0) rotate3d(0,1,0,0deg);transform:perspective(400px) scaleZ(1) translateZ(0) rotateY(0);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}.animate__animated.animate__flip{-webkit-backface-visibility:visible;backface-visibility:visible;-webkit-animation-name:flip;animation-name:flip}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotateX(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotateX(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes flipInX{0%{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(1,0,0,10deg);transform:perspective(400px) rotateX(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-5deg);transform:perspective(400px) rotateX(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}.animate__flipInX{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInX;animation-name:flipInX}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-20deg);transform:perspective(400px) rotateY(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(0,1,0,10deg);transform:perspective(400px) rotateY(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-5deg);transform:perspective(400px) rotateY(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes flipInY{0%{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-20deg);transform:perspective(400px) rotateY(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotate3d(0,1,0,10deg);transform:perspective(400px) rotateY(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-5deg);transform:perspective(400px) rotateY(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}.animate__flipInY{-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInY;animation-name:flipInY}@-webkit-keyframes flipOutX{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(1,0,0,-20deg);transform:perspective(400px) rotateX(-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(1,0,0,90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}.animate__flipOutX{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-animation-name:flipOutX;animation-name:flipOutX;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-15deg);transform:perspective(400px) rotateY(-15deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotate3d(0,1,0,-15deg);transform:perspective(400px) rotateY(-15deg);opacity:1}to{-webkit-transform:perspective(400px) rotate3d(0,1,0,90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}.animate__flipOutY{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration) * .75);animation-duration:calc(var(--animate-duration) * .75);-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipOutY;animation-name:flipOutY}@-webkit-keyframes lightSpeedInRight{0%{-webkit-transform:translate3d(100%,0,0) skewX(-30deg);transform:translate3d(100%,0,0) skew(-30deg);opacity:0}60%{-webkit-transform:skewX(20deg);transform:skew(20deg);opacity:1}80%{-webkit-transform:skewX(-5deg);transform:skew(-5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes lightSpeedInRight{0%{-webkit-transform:translate3d(100%,0,0) skewX(-30deg);transform:translate3d(100%,0,0) skew(-30deg);opacity:0}60%{-webkit-transform:skewX(20deg);transform:skew(20deg);opacity:1}80%{-webkit-transform:skewX(-5deg);transform:skew(-5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__lightSpeedInRight{-webkit-animation-name:lightSpeedInRight;animation-name:lightSpeedInRight;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedInLeft{0%{-webkit-transform:translate3d(-100%,0,0) skewX(30deg);transform:translate3d(-100%,0,0) skew(30deg);opacity:0}60%{-webkit-transform:skewX(-20deg);transform:skew(-20deg);opacity:1}80%{-webkit-transform:skewX(5deg);transform:skew(5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes lightSpeedInLeft{0%{-webkit-transform:translate3d(-100%,0,0) skewX(30deg);transform:translate3d(-100%,0,0) skew(30deg);opacity:0}60%{-webkit-transform:skewX(-20deg);transform:skew(-20deg);opacity:1}80%{-webkit-transform:skewX(5deg);transform:skew(5deg)}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__lightSpeedInLeft{-webkit-animation-name:lightSpeedInLeft;animation-name:lightSpeedInLeft;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedOutRight{0%{opacity:1}to{-webkit-transform:translate3d(100%,0,0) skewX(30deg);transform:translate3d(100%,0,0) skew(30deg);opacity:0}}@keyframes lightSpeedOutRight{0%{opacity:1}to{-webkit-transform:translate3d(100%,0,0) skewX(30deg);transform:translate3d(100%,0,0) skew(30deg);opacity:0}}.animate__lightSpeedOutRight{-webkit-animation-name:lightSpeedOutRight;animation-name:lightSpeedOutRight;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}@-webkit-keyframes lightSpeedOutLeft{0%{opacity:1}to{-webkit-transform:translate3d(-100%,0,0) skewX(-30deg);transform:translate3d(-100%,0,0) skew(-30deg);opacity:0}}@keyframes lightSpeedOutLeft{0%{opacity:1}to{-webkit-transform:translate3d(-100%,0,0) skewX(-30deg);transform:translate3d(-100%,0,0) skew(-30deg);opacity:0}}.animate__lightSpeedOutLeft{-webkit-animation-name:lightSpeedOutLeft;animation-name:lightSpeedOutLeft;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}@-webkit-keyframes rotateIn{0%{-webkit-transform:rotate3d(0,0,1,-200deg);transform:rotate3d(0,0,1,-200deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateIn{0%{-webkit-transform:rotate3d(0,0,1,-200deg);transform:rotate3d(0,0,1,-200deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateIn{-webkit-animation-name:rotateIn;animation-name:rotateIn;-webkit-transform-origin:center;transform-origin:center}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInDownLeft{0%{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInDownRight{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInDownRight{-webkit-animation-name:rotateInDownRight;animation-name:rotateInDownRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInUpLeft{0%{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform:rotate3d(0,0,1,-90deg);transform:rotate3d(0,0,1,-90deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}@keyframes rotateInUpRight{0%{-webkit-transform:rotate3d(0,0,1,-90deg);transform:rotate3d(0,0,1,-90deg);opacity:0}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0);opacity:1}}.animate__rotateInUpRight{-webkit-animation-name:rotateInUpRight;animation-name:rotateInUpRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes rotateOut{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,200deg);transform:rotate3d(0,0,1,200deg);opacity:0}}@keyframes rotateOut{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,200deg);transform:rotate3d(0,0,1,200deg);opacity:0}}.animate__rotateOut{-webkit-animation-name:rotateOut;animation-name:rotateOut;-webkit-transform-origin:center;transform-origin:center}@-webkit-keyframes rotateOutDownLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}}@keyframes rotateOutDownLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,45deg);transform:rotate3d(0,0,1,45deg);opacity:0}}.animate__rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateOutDownRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}@keyframes rotateOutDownRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}.animate__rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes rotateOutUpLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}@keyframes rotateOutUpLeft{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,-45deg);transform:rotate3d(0,0,1,-45deg);opacity:0}}.animate__rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft;-webkit-transform-origin:left bottom;transform-origin:left bottom}@-webkit-keyframes rotateOutUpRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,90deg);transform:rotate3d(0,0,1,90deg);opacity:0}}@keyframes rotateOutUpRight{0%{opacity:1}to{-webkit-transform:rotate3d(0,0,1,90deg);transform:rotate3d(0,0,1,90deg);opacity:0}}.animate__rotateOutUpRight{-webkit-animation-name:rotateOutUpRight;animation-name:rotateOutUpRight;-webkit-transform-origin:right bottom;transform-origin:right bottom}@-webkit-keyframes hinge{0%{-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate3d(0,0,1,80deg);transform:rotate3d(0,0,1,80deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%,80%{-webkit-transform:rotate3d(0,0,1,60deg);transform:rotate3d(0,0,1,60deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}to{-webkit-transform:translate3d(0,700px,0);transform:translate3d(0,700px,0);opacity:0}}@keyframes hinge{0%{-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate3d(0,0,1,80deg);transform:rotate3d(0,0,1,80deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%,80%{-webkit-transform:rotate3d(0,0,1,60deg);transform:rotate3d(0,0,1,60deg);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}to{-webkit-transform:translate3d(0,700px,0);transform:translate3d(0,700px,0);opacity:0}}.animate__hinge{-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-duration:calc(var(--animate-duration) * 2);animation-duration:calc(var(--animate-duration) * 2);-webkit-animation-name:hinge;animation-name:hinge;-webkit-transform-origin:top left;transform-origin:top left}@-webkit-keyframes jackInTheBox{0%{opacity:0;-webkit-transform:scale(.1) rotate(30deg);transform:scale(.1) rotate(30deg);-webkit-transform-origin:center bottom;transform-origin:center bottom}50%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}70%{-webkit-transform:rotate(3deg);transform:rotate(3deg)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes jackInTheBox{0%{opacity:0;-webkit-transform:scale(.1) rotate(30deg);transform:scale(.1) rotate(30deg);-webkit-transform-origin:center bottom;transform-origin:center bottom}50%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}70%{-webkit-transform:rotate(3deg);transform:rotate(3deg)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.animate__jackInTheBox{-webkit-animation-name:jackInTheBox;animation-name:jackInTheBox}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg);transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes rollIn{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg);transform:translate3d(-100%,0,0) rotate3d(0,0,1,-120deg)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__rollIn{-webkit-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg);transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg)}}@keyframes rollOut{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg);transform:translate3d(100%,0,0) rotate3d(0,0,1,120deg)}}.animate__rollOut{-webkit-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}.animate__zoomIn{-webkit-animation-name:zoomIn;animation-name:zoomIn}@-webkit-keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInDown{-webkit-animation-name:zoomInDown;animation-name:zoomInDown}@-webkit-keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(10px,0,0);transform:scale3d(.475,.475,.475) translate3d(10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(10px,0,0);transform:scale3d(.475,.475,.475) translate3d(10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInLeft{-webkit-animation-name:zoomInLeft;animation-name:zoomInLeft}@-webkit-keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInRight{-webkit-animation-name:zoomInRight;animation-name:zoomInRight}@-webkit-keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomInUp{-webkit-animation-name:zoomInUp;animation-name:zoomInUp}@-webkit-keyframes zoomOut{0%{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}.animate__zoomOut{-webkit-animation-name:zoomOut;animation-name:zoomOut}@-webkit-keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomOutDown{-webkit-animation-name:zoomOutDown;animation-name:zoomOutDown;-webkit-transform-origin:center bottom;transform-origin:center bottom}@-webkit-keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(42px,0,0);transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(-2000px,0,0);transform:scale(.1) translate3d(-2000px,0,0)}}@keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(42px,0,0);transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(-2000px,0,0);transform:scale(.1) translate3d(-2000px,0,0)}}.animate__zoomOutLeft{-webkit-animation-name:zoomOutLeft;animation-name:zoomOutLeft;-webkit-transform-origin:left center;transform-origin:left center}@-webkit-keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-42px,0,0);transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(2000px,0,0);transform:scale(.1) translate3d(2000px,0,0)}}@keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-42px,0,0);transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(2000px,0,0);transform:scale(.1) translate3d(2000px,0,0)}}.animate__zoomOutRight{-webkit-animation-name:zoomOutRight;animation-name:zoomOutRight;-webkit-transform-origin:right center;transform-origin:right center}@-webkit-keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.animate__zoomOutUp{-webkit-animation-name:zoomOutUp;animation-name:zoomOutUp;-webkit-transform-origin:center bottom;transform-origin:center bottom}@-webkit-keyframes slideInDown{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInDown{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInDown{-webkit-animation-name:slideInDown;animation-name:slideInDown}@-webkit-keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInLeft{-webkit-animation-name:slideInLeft;animation-name:slideInLeft}@-webkit-keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInRight{-webkit-animation-name:slideInRight;animation-name:slideInRight}@-webkit-keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}.animate__slideInUp{-webkit-animation-name:slideInUp;animation-name:slideInUp}@-webkit-keyframes slideOutDown{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes slideOutDown{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}.animate__slideOutDown{-webkit-animation-name:slideOutDown;animation-name:slideOutDown}@-webkit-keyframes slideOutLeft{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes slideOutLeft{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}.animate__slideOutLeft{-webkit-animation-name:slideOutLeft;animation-name:slideOutLeft}@-webkit-keyframes slideOutRight{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes slideOutRight{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}.animate__slideOutRight{-webkit-animation-name:slideOutRight;animation-name:slideOutRight}@-webkit-keyframes slideOutUp{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes slideOutUp{0%{-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}.animate__slideOutUp{-webkit-animation-name:slideOutUp;animation-name:slideOutUp}span[data-v-d4e41a56]{top:-34px;left:0}.dropdown-menu[data-v-ebeddf70]{right:1rem;min-width:200px}.dropdown-item.disabled[data-v-ebeddf70],.dropdown-item[data-v-ebeddf70]:disabled{opacity:.7}.confirmDelete[data-v-ebeddf70]{padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x)}.slide-fade-leave-active[data-v-0f5aec0a],.slide-fade-enter-active[data-v-0f5aec0a]{transition:all .2s cubic-bezier(.82,.58,.17,1.3)}.slide-fade-enter-from[data-v-0f5aec0a],.slide-fade-leave-to[data-v-0f5aec0a]{transform:translateY(20px);opacity:0;filter:blur(3px)}.subMenuBtn.active[data-v-0f5aec0a]{background-color:#ffffff20}.peerCard[data-v-0f5aec0a]{transition:box-shadow .1s cubic-bezier(.82,.58,.17,.9)}.peerCard[data-v-0f5aec0a]:hover{box-shadow:var(--bs-box-shadow)!important}.peerNav .nav-link{&.active[data-v-4fe6960d]{background-color:#efefef}}th[data-v-4fe6960d],td[data-v-4fe6960d]{background-color:transparent!important}@media screen and (max-width: 576px){.titleBtn[data-v-4fe6960d]{flex-basis:100%}} diff --git a/src/static/app/dist/assets/peerQRCode-GmcmuBji.js b/src/static/app/dist/assets/peerQRCode-DiLT87Op.js similarity index 93% rename from src/static/app/dist/assets/peerQRCode-GmcmuBji.js rename to src/static/app/dist/assets/peerQRCode-DiLT87Op.js index a6238c1..8d6d523 100644 --- a/src/static/app/dist/assets/peerQRCode-GmcmuBji.js +++ b/src/static/app/dist/assets/peerQRCode-DiLT87Op.js @@ -1 +1 @@ -import{b as i}from"./browser-CjSdxGTc.js";import{L as c}from"./localeText-CyxQ0Kz3.js";import{_ as l,D as p,g as _,k as m,a as n,c as r,b as e,d as u,n as h,e as f}from"./index-CfPziasH.js";const g={name:"peerQRCode",components:{LocaleText:c},props:{selectedPeer:Object},setup(){return{dashboardStore:p()}},data(){return{loading:!0}},mounted(){_("/api/downloadPeer/"+this.$route.params.id,{id:this.selectedPeer.id},o=>{if(this.loading=!1,o.status){let t="";if(this.selectedPeer.configuration.Protocol==="awg"){let a={containers:[{awg:{isThirdPartyConfig:!0,last_config:o.data.file,port:this.selectedPeer.configuration.ListenPort,transport_proto:"udp"},container:"amnezia-awg"}],defaultContainer:"amnezia-awg",description:this.selectedPeer.name,hostName:this.dashboardStore.Configuration.Peers.remote_endpoint};t=JSON.stringify(a)}else t=o.data.file;i.toCanvas(document.querySelector("#qrcode"),t,a=>{a&&console.error(a)})}else this.dashboardStore.newMessage("Server",o.message,"danger")})}},b={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0"},v={class:"container d-flex h-100 w-100"},C={class:"m-auto modal-dialog-centered dashboardModal justify-content-center"},w={class:"card rounded-3 shadow"},P={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-0"},x={class:"mb-0"},S={class:"card-body p-4"},y={class:"d-flex"},L={key:0,class:"spinner-border m-auto",role:"status"};function k(o,t,a,N,s,$){const d=m("LocaleText");return n(),r("div",b,[e("div",v,[e("div",C,[e("div",w,[e("div",P,[e("h4",x,[u(d,{t:"QR Code"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:t[0]||(t[0]=Q=>this.$emit("close"))})]),e("div",S,[e("div",y,[e("canvas",{id:"qrcode",class:h(["rounded-3 shadow animate__animated animate__fadeIn animate__faster",{"d-none":s.loading}])},null,2),s.loading?(n(),r("div",L,t[1]||(t[1]=[e("span",{class:"visually-hidden"},"Loading...",-1)]))):f("",!0)])])])])])])}const q=l(g,[["render",k],["__scopeId","data-v-5816a147"]]);export{q as default}; +import{b as i}from"./browser-CjSdxGTc.js";import{L as c}from"./localeText-qJNpKS91.js";import{_ as l,D as p,g as _,k as m,a as n,c as r,b as e,d as u,n as h,e as f}from"./index-AzYVPyhh.js";const g={name:"peerQRCode",components:{LocaleText:c},props:{selectedPeer:Object},setup(){return{dashboardStore:p()}},data(){return{loading:!0}},mounted(){_("/api/downloadPeer/"+this.$route.params.id,{id:this.selectedPeer.id},o=>{if(this.loading=!1,o.status){let t="";if(this.selectedPeer.configuration.Protocol==="awg"){let a={containers:[{awg:{isThirdPartyConfig:!0,last_config:o.data.file,port:this.selectedPeer.configuration.ListenPort,transport_proto:"udp"},container:"amnezia-awg"}],defaultContainer:"amnezia-awg",description:this.selectedPeer.name,hostName:this.dashboardStore.Configuration.Peers.remote_endpoint};t=JSON.stringify(a)}else t=o.data.file;i.toCanvas(document.querySelector("#qrcode"),t,a=>{a&&console.error(a)})}else this.dashboardStore.newMessage("Server",o.message,"danger")})}},b={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0"},v={class:"container d-flex h-100 w-100"},C={class:"m-auto modal-dialog-centered dashboardModal justify-content-center"},w={class:"card rounded-3 shadow"},P={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-0"},x={class:"mb-0"},S={class:"card-body p-4"},y={class:"d-flex"},L={key:0,class:"spinner-border m-auto",role:"status"};function k(o,t,a,N,s,$){const d=m("LocaleText");return n(),r("div",b,[e("div",v,[e("div",C,[e("div",w,[e("div",P,[e("h4",x,[u(d,{t:"QR Code"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:t[0]||(t[0]=Q=>this.$emit("close"))})]),e("div",S,[e("div",y,[e("canvas",{id:"qrcode",class:h(["rounded-3 shadow animate__animated animate__fadeIn animate__faster",{"d-none":s.loading}])},null,2),s.loading?(n(),r("div",L,t[1]||(t[1]=[e("span",{class:"visually-hidden"},"Loading...",-1)]))):f("",!0)])])])])])])}const q=l(g,[["render",k],["__scopeId","data-v-5816a147"]]);export{q as default}; diff --git a/src/static/app/dist/assets/peerSearchBar-CdEZuAVf.js b/src/static/app/dist/assets/peerSearchBar-BEWVShK6.js similarity index 92% rename from src/static/app/dist/assets/peerSearchBar-CdEZuAVf.js rename to src/static/app/dist/assets/peerSearchBar-BEWVShK6.js index 4363342..596fe44 100644 --- a/src/static/app/dist/assets/peerSearchBar-CdEZuAVf.js +++ b/src/static/app/dist/assets/peerSearchBar-BEWVShK6.js @@ -1 +1 @@ -import{_ as u,q as m,G as p,r as b,W as f,a2 as h,o as g,a as v,i as y,w as _,b as e,m as x,y as w,d as S,j as B}from"./index-CfPziasH.js";import{L as T}from"./localeText-CyxQ0Kz3.js";const C={class:"fixed-bottom w-100 bottom-0 z-2",style:{"z-index":"1"}},P={class:"container-fluid"},k={class:"row g-0"},L={class:"col-md-9 col-lg-10 d-flex justify-content-center py-2"},V={class:"rounded-3 p-2 border shadow searchPeersContainer bg-body-tertiary"},j={class:"d-flex gap-1 align-items-center px-2"},z=["placeholder"],D={__name:"peerSearchBar",emits:["close"],setup(G,{emit:n}){const l=m(()=>p("Search Peers..."));let t;const o=b(""),r=f(),i=()=>{t?(clearTimeout(t),t=setTimeout(()=>{r.searchString=o.value},300)):t=setTimeout(()=>{r.searchString=o.value},300)},d=n,c=h("searchBar");return g(()=>{c.value.focus()}),(M,s)=>(v(),y(B,{name:"slideUp",appear:"",type:"animation",style:{"animation-delay":"1s"}},{default:_(()=>[e("div",C,[e("div",P,[e("div",k,[s[5]||(s[5]=e("div",{class:"col-md-3 col-lg-2"},null,-1)),e("div",L,[e("div",V,[e("div",j,[s[4]||(s[4]=e("h6",{class:"mb-0 me-2"},[e("label",{for:"searchPeers"},[e("i",{class:"bi bi-search"})])],-1)),x(e("input",{ref:"searchBar",class:"flex-grow-1 form-control rounded-3 bg-secondary-subtle border-1 border-secondary-subtle",placeholder:l.value,id:"searchPeers",onKeyup:s[0]||(s[0]=a=>i()),"onUpdate:modelValue":s[1]||(s[1]=a=>o.value=a)},null,40,z),[[w,o.value]]),e("button",{onClick:s[2]||(s[2]=a=>d("close")),style:{"white-space":"nowrap"},class:"btn bg-secondary-subtle text-secondary-emphasis border-secondary-subtle rounded-3 d-flex align-items-center"},[e("span",null,[s[3]||(s[3]=e("i",{class:"bi bi-x-circle-fill me-2"},null,-1)),S(T,{t:"Done"})])])])])])])])])]),_:1}))}},W=u(D,[["__scopeId","data-v-b741afe7"]]);export{W as default}; +import{_ as u,q as m,G as p,r as b,W as f,a2 as h,o as g,a as v,i as y,w as _,b as e,m as x,y as w,d as S,j as B}from"./index-AzYVPyhh.js";import{L as T}from"./localeText-qJNpKS91.js";const C={class:"fixed-bottom w-100 bottom-0 z-2",style:{"z-index":"1"}},P={class:"container-fluid"},k={class:"row g-0"},L={class:"col-md-9 col-lg-10 d-flex justify-content-center py-2"},V={class:"rounded-3 p-2 border shadow searchPeersContainer bg-body-tertiary"},j={class:"d-flex gap-1 align-items-center px-2"},z=["placeholder"],D={__name:"peerSearchBar",emits:["close"],setup(G,{emit:n}){const l=m(()=>p("Search Peers..."));let t;const o=b(""),r=f(),i=()=>{t?(clearTimeout(t),t=setTimeout(()=>{r.searchString=o.value},300)):t=setTimeout(()=>{r.searchString=o.value},300)},d=n,c=h("searchBar");return g(()=>{c.value.focus()}),(M,s)=>(v(),y(B,{name:"slideUp",appear:"",type:"animation",style:{"animation-delay":"1s"}},{default:_(()=>[e("div",C,[e("div",P,[e("div",k,[s[5]||(s[5]=e("div",{class:"col-md-3 col-lg-2"},null,-1)),e("div",L,[e("div",V,[e("div",j,[s[4]||(s[4]=e("h6",{class:"mb-0 me-2"},[e("label",{for:"searchPeers"},[e("i",{class:"bi bi-search"})])],-1)),x(e("input",{ref:"searchBar",class:"flex-grow-1 form-control rounded-3 bg-secondary-subtle border-1 border-secondary-subtle",placeholder:l.value,id:"searchPeers",onKeyup:s[0]||(s[0]=a=>i()),"onUpdate:modelValue":s[1]||(s[1]=a=>o.value=a)},null,40,z),[[w,o.value]]),e("button",{onClick:s[2]||(s[2]=a=>d("close")),style:{"white-space":"nowrap"},class:"btn bg-secondary-subtle text-secondary-emphasis border-secondary-subtle rounded-3 d-flex align-items-center"},[e("span",null,[s[3]||(s[3]=e("i",{class:"bi bi-x-circle-fill me-2"},null,-1)),S(T,{t:"Done"})])])])])])])])])]),_:1}))}},W=u(D,[["__scopeId","data-v-b741afe7"]]);export{W as default}; diff --git a/src/static/app/dist/assets/peerSettings-a8GW0whb.js b/src/static/app/dist/assets/peerSettings-ByC23ho9.js similarity index 98% rename from src/static/app/dist/assets/peerSettings-a8GW0whb.js rename to src/static/app/dist/assets/peerSettings-ByC23ho9.js index 629fbef..0e42a19 100644 --- a/src/static/app/dist/assets/peerSettings-a8GW0whb.js +++ b/src/static/app/dist/assets/peerSettings-ByC23ho9.js @@ -1 +1 @@ -import{_ as u,D as c,A as n,k as m,a as r,c as p,b as e,d as a,t as h,m as i,y as d,n as b,$ as _,e as f}from"./index-CfPziasH.js";import{L as g}from"./localeText-CyxQ0Kz3.js";const v={name:"peerSettings",components:{LocaleText:g},props:{selectedPeer:Object},data(){return{data:void 0,dataChanged:!1,showKey:!1,saving:!1}},setup(){return{dashboardConfigurationStore:c()}},methods:{reset(){this.selectedPeer&&(this.data=JSON.parse(JSON.stringify(this.selectedPeer)),this.dataChanged=!1)},savePeer(){this.saving=!0,n(`/api/updatePeerSettings/${this.$route.params.id}`,this.data,l=>{this.saving=!1,l.status?this.dashboardConfigurationStore.newMessage("Server","Peer saved","success"):this.dashboardConfigurationStore.newMessage("Server",l.message,"danger"),this.$emit("refresh")})},resetPeerData(l){this.saving=!0,n(`/api/resetPeerData/${this.$route.params.id}`,{id:this.data.id,type:l},t=>{this.saving=!1,t.status?this.dashboardConfigurationStore.newMessage("Server","Peer data usage reset successfully","success"):this.dashboardConfigurationStore.newMessage("Server",t.message,"danger"),this.$emit("refresh")})}},beforeMount(){this.reset()},mounted(){this.$el.querySelectorAll("input").forEach(l=>{l.addEventListener("change",()=>{this.dataChanged=!0})})}},x={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},y={class:"container d-flex h-100 w-100"},w={class:"m-auto modal-dialog-centered dashboardModal"},S={class:"card rounded-3 shadow flex-grow-1"},k={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-2"},C={class:"mb-0"},P={key:0,class:"card-body px-4"},$={class:"d-flex flex-column gap-2 mb-4"},D={class:"d-flex align-items-center"},N={class:"text-muted"},V={class:"ms-auto"},K={for:"peer_name_textbox",class:"form-label"},U={class:"text-muted"},M=["disabled"],A={class:"d-flex position-relative"},R={for:"peer_private_key_textbox",class:"form-label"},O={class:"text-muted"},T=["type","disabled"],L={for:"peer_allowed_ip_textbox",class:"form-label"},q={class:"text-muted"},E=["disabled"],B={for:"peer_endpoint_allowed_ips",class:"form-label"},I={class:"text-muted"},J=["disabled"],j={for:"peer_DNS_textbox",class:"form-label"},z={class:"text-muted"},Q=["disabled"],F={class:"accordion my-3",id:"peerSettingsAccordion"},G={class:"accordion-item"},H={class:"accordion-header"},W={class:"accordion-button rounded-3 collapsed",type:"button","data-bs-toggle":"collapse","data-bs-target":"#peerSettingsAccordionOptional"},X={id:"peerSettingsAccordionOptional",class:"accordion-collapse collapse","data-bs-parent":"#peerSettingsAccordion"},Y={class:"accordion-body d-flex flex-column gap-2 mb-2"},Z={for:"peer_preshared_key_textbox",class:"form-label"},ee={class:"text-muted"},te=["disabled"],se={for:"peer_mtu",class:"form-label"},oe={class:"text-muted"},ae=["disabled"],le={for:"peer_keep_alive",class:"form-label"},ie={class:"text-muted"},de=["disabled"],ne={class:"d-flex align-items-center gap-2"},re=["disabled"],pe=["disabled"],ue={class:"d-flex gap-2 align-items-center"},ce={class:"d-flex gap-2 ms-auto"};function me(l,t,he,be,_e,fe){const o=m("LocaleText");return r(),p("div",x,[e("div",y,[e("div",w,[e("div",S,[e("div",k,[e("h4",C,[a(o,{t:"Peer Settings"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:t[0]||(t[0]=s=>this.$emit("close"))})]),this.data?(r(),p("div",P,[e("div",$,[e("div",D,[e("small",N,[a(o,{t:"Public Key"})]),e("small",V,[e("samp",null,h(this.data.id),1)])]),e("div",null,[e("label",K,[e("small",U,[a(o,{t:"Name"})])]),i(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[1]||(t[1]=s=>this.data.name=s),id:"peer_name_textbox",placeholder:""},null,8,M),[[d,this.data.name]])]),e("div",null,[e("div",A,[e("label",R,[e("small",O,[a(o,{t:"Private Key"}),e("code",null,[a(o,{t:"(Required for QR Code and Download)"})])])]),e("a",{role:"button",class:"ms-auto text-decoration-none toggleShowKey",onClick:t[2]||(t[2]=s=>this.showKey=!this.showKey)},[e("i",{class:b(["bi",[this.showKey?"bi-eye-slash-fill":"bi-eye-fill"]])},null,2)])]),i(e("input",{type:[this.showKey?"text":"password"],class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[3]||(t[3]=s=>this.data.private_key=s),id:"peer_private_key_textbox",style:{"padding-right":"40px"}},null,8,T),[[_,this.data.private_key]])]),e("div",null,[e("label",L,[e("small",q,[a(o,{t:"Allowed IPs"}),e("code",null,[a(o,{t:"(Required)"})])])]),i(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[4]||(t[4]=s=>this.data.allowed_ip=s),id:"peer_allowed_ip_textbox"},null,8,E),[[d,this.data.allowed_ip]])]),e("div",null,[e("label",B,[e("small",I,[a(o,{t:"Endpoint Allowed IPs"}),e("code",null,[a(o,{t:"(Required)"})])])]),i(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[5]||(t[5]=s=>this.data.endpoint_allowed_ip=s),id:"peer_endpoint_allowed_ips"},null,8,J),[[d,this.data.endpoint_allowed_ip]])]),e("div",null,[e("label",j,[e("small",z,[a(o,{t:"DNS"})])]),i(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[6]||(t[6]=s=>this.data.DNS=s),id:"peer_DNS_textbox"},null,8,Q),[[d,this.data.DNS]])]),e("div",F,[e("div",G,[e("h2",H,[e("button",W,[a(o,{t:"Optional Settings"})])]),e("div",X,[e("div",Y,[e("div",null,[e("label",Z,[e("small",ee,[a(o,{t:"Pre-Shared Key"})])]),i(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[7]||(t[7]=s=>this.data.preshared_key=s),id:"peer_preshared_key_textbox"},null,8,te),[[d,this.data.preshared_key]])]),e("div",null,[e("label",se,[e("small",oe,[a(o,{t:"MTU"})])]),i(e("input",{type:"number",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[8]||(t[8]=s=>this.data.mtu=s),id:"peer_mtu"},null,8,ae),[[d,this.data.mtu]])]),e("div",null,[e("label",le,[e("small",ie,[a(o,{t:"Persistent Keepalive"})])]),i(e("input",{type:"number",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[9]||(t[9]=s=>this.data.keepalive=s),id:"peer_keep_alive"},null,8,de),[[d,this.data.keepalive]])])])])])]),e("div",ne,[e("button",{class:"btn bg-secondary-subtle border-secondary-subtle text-secondary-emphasis rounded-3 shadow ms-auto px-3 py-2",onClick:t[10]||(t[10]=s=>this.reset()),disabled:!this.dataChanged||this.saving},[t[15]||(t[15]=e("i",{class:"bi bi-arrow-clockwise me-2"},null,-1)),a(o,{t:"Reset"})],8,re),e("button",{class:"btn bg-primary-subtle border-primary-subtle text-primary-emphasis rounded-3 px-3 py-2 shadow",disabled:!this.dataChanged||this.saving,onClick:t[11]||(t[11]=s=>this.savePeer())},[t[16]||(t[16]=e("i",{class:"bi bi-save-fill me-2"},null,-1)),a(o,{t:"Save"})],8,pe)]),t[20]||(t[20]=e("hr",null,null,-1)),e("div",ue,[e("strong",null,[a(o,{t:"Reset Data Usage"})]),e("div",ce,[e("button",{class:"btn bg-primary-subtle text-primary-emphasis rounded-3 flex-grow-1 shadow-sm",onClick:t[12]||(t[12]=s=>this.resetPeerData("total"))},[t[17]||(t[17]=e("i",{class:"bi bi-arrow-down-up me-2"},null,-1)),a(o,{t:"Total"})]),e("button",{class:"btn bg-primary-subtle text-primary-emphasis rounded-3 flex-grow-1 shadow-sm",onClick:t[13]||(t[13]=s=>this.resetPeerData("receive"))},[t[18]||(t[18]=e("i",{class:"bi bi-arrow-down me-2"},null,-1)),a(o,{t:"Received"})]),e("button",{class:"btn bg-primary-subtle text-primary-emphasis rounded-3 flex-grow-1 shadow-sm",onClick:t[14]||(t[14]=s=>this.resetPeerData("sent"))},[t[19]||(t[19]=e("i",{class:"bi bi-arrow-up me-2"},null,-1)),a(o,{t:"Sent"})])])])])])):f("",!0)])])])])}const xe=u(v,[["render",me],["__scopeId","data-v-12b3ae8e"]]);export{xe as default}; +import{_ as u,D as c,A as n,k as m,a as r,c as p,b as e,d as a,t as h,m as i,y as d,n as b,$ as _,e as f}from"./index-AzYVPyhh.js";import{L as g}from"./localeText-qJNpKS91.js";const v={name:"peerSettings",components:{LocaleText:g},props:{selectedPeer:Object},data(){return{data:void 0,dataChanged:!1,showKey:!1,saving:!1}},setup(){return{dashboardConfigurationStore:c()}},methods:{reset(){this.selectedPeer&&(this.data=JSON.parse(JSON.stringify(this.selectedPeer)),this.dataChanged=!1)},savePeer(){this.saving=!0,n(`/api/updatePeerSettings/${this.$route.params.id}`,this.data,l=>{this.saving=!1,l.status?this.dashboardConfigurationStore.newMessage("Server","Peer saved","success"):this.dashboardConfigurationStore.newMessage("Server",l.message,"danger"),this.$emit("refresh")})},resetPeerData(l){this.saving=!0,n(`/api/resetPeerData/${this.$route.params.id}`,{id:this.data.id,type:l},t=>{this.saving=!1,t.status?this.dashboardConfigurationStore.newMessage("Server","Peer data usage reset successfully","success"):this.dashboardConfigurationStore.newMessage("Server",t.message,"danger"),this.$emit("refresh")})}},beforeMount(){this.reset()},mounted(){this.$el.querySelectorAll("input").forEach(l=>{l.addEventListener("change",()=>{this.dataChanged=!0})})}},x={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},y={class:"container d-flex h-100 w-100"},w={class:"m-auto modal-dialog-centered dashboardModal"},S={class:"card rounded-3 shadow flex-grow-1"},k={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-2"},C={class:"mb-0"},P={key:0,class:"card-body px-4"},$={class:"d-flex flex-column gap-2 mb-4"},D={class:"d-flex align-items-center"},N={class:"text-muted"},V={class:"ms-auto"},K={for:"peer_name_textbox",class:"form-label"},U={class:"text-muted"},M=["disabled"],A={class:"d-flex position-relative"},R={for:"peer_private_key_textbox",class:"form-label"},O={class:"text-muted"},T=["type","disabled"],L={for:"peer_allowed_ip_textbox",class:"form-label"},q={class:"text-muted"},E=["disabled"],B={for:"peer_endpoint_allowed_ips",class:"form-label"},I={class:"text-muted"},J=["disabled"],j={for:"peer_DNS_textbox",class:"form-label"},z={class:"text-muted"},Q=["disabled"],F={class:"accordion my-3",id:"peerSettingsAccordion"},G={class:"accordion-item"},H={class:"accordion-header"},W={class:"accordion-button rounded-3 collapsed",type:"button","data-bs-toggle":"collapse","data-bs-target":"#peerSettingsAccordionOptional"},X={id:"peerSettingsAccordionOptional",class:"accordion-collapse collapse","data-bs-parent":"#peerSettingsAccordion"},Y={class:"accordion-body d-flex flex-column gap-2 mb-2"},Z={for:"peer_preshared_key_textbox",class:"form-label"},ee={class:"text-muted"},te=["disabled"],se={for:"peer_mtu",class:"form-label"},oe={class:"text-muted"},ae=["disabled"],le={for:"peer_keep_alive",class:"form-label"},ie={class:"text-muted"},de=["disabled"],ne={class:"d-flex align-items-center gap-2"},re=["disabled"],pe=["disabled"],ue={class:"d-flex gap-2 align-items-center"},ce={class:"d-flex gap-2 ms-auto"};function me(l,t,he,be,_e,fe){const o=m("LocaleText");return r(),p("div",x,[e("div",y,[e("div",w,[e("div",S,[e("div",k,[e("h4",C,[a(o,{t:"Peer Settings"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:t[0]||(t[0]=s=>this.$emit("close"))})]),this.data?(r(),p("div",P,[e("div",$,[e("div",D,[e("small",N,[a(o,{t:"Public Key"})]),e("small",V,[e("samp",null,h(this.data.id),1)])]),e("div",null,[e("label",K,[e("small",U,[a(o,{t:"Name"})])]),i(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[1]||(t[1]=s=>this.data.name=s),id:"peer_name_textbox",placeholder:""},null,8,M),[[d,this.data.name]])]),e("div",null,[e("div",A,[e("label",R,[e("small",O,[a(o,{t:"Private Key"}),e("code",null,[a(o,{t:"(Required for QR Code and Download)"})])])]),e("a",{role:"button",class:"ms-auto text-decoration-none toggleShowKey",onClick:t[2]||(t[2]=s=>this.showKey=!this.showKey)},[e("i",{class:b(["bi",[this.showKey?"bi-eye-slash-fill":"bi-eye-fill"]])},null,2)])]),i(e("input",{type:[this.showKey?"text":"password"],class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[3]||(t[3]=s=>this.data.private_key=s),id:"peer_private_key_textbox",style:{"padding-right":"40px"}},null,8,T),[[_,this.data.private_key]])]),e("div",null,[e("label",L,[e("small",q,[a(o,{t:"Allowed IPs"}),e("code",null,[a(o,{t:"(Required)"})])])]),i(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[4]||(t[4]=s=>this.data.allowed_ip=s),id:"peer_allowed_ip_textbox"},null,8,E),[[d,this.data.allowed_ip]])]),e("div",null,[e("label",B,[e("small",I,[a(o,{t:"Endpoint Allowed IPs"}),e("code",null,[a(o,{t:"(Required)"})])])]),i(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[5]||(t[5]=s=>this.data.endpoint_allowed_ip=s),id:"peer_endpoint_allowed_ips"},null,8,J),[[d,this.data.endpoint_allowed_ip]])]),e("div",null,[e("label",j,[e("small",z,[a(o,{t:"DNS"})])]),i(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[6]||(t[6]=s=>this.data.DNS=s),id:"peer_DNS_textbox"},null,8,Q),[[d,this.data.DNS]])]),e("div",F,[e("div",G,[e("h2",H,[e("button",W,[a(o,{t:"Optional Settings"})])]),e("div",X,[e("div",Y,[e("div",null,[e("label",Z,[e("small",ee,[a(o,{t:"Pre-Shared Key"})])]),i(e("input",{type:"text",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[7]||(t[7]=s=>this.data.preshared_key=s),id:"peer_preshared_key_textbox"},null,8,te),[[d,this.data.preshared_key]])]),e("div",null,[e("label",se,[e("small",oe,[a(o,{t:"MTU"})])]),i(e("input",{type:"number",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[8]||(t[8]=s=>this.data.mtu=s),id:"peer_mtu"},null,8,ae),[[d,this.data.mtu]])]),e("div",null,[e("label",le,[e("small",ie,[a(o,{t:"Persistent Keepalive"})])]),i(e("input",{type:"number",class:"form-control form-control-sm rounded-3",disabled:this.saving,"onUpdate:modelValue":t[9]||(t[9]=s=>this.data.keepalive=s),id:"peer_keep_alive"},null,8,de),[[d,this.data.keepalive]])])])])])]),e("div",ne,[e("button",{class:"btn bg-secondary-subtle border-secondary-subtle text-secondary-emphasis rounded-3 shadow ms-auto px-3 py-2",onClick:t[10]||(t[10]=s=>this.reset()),disabled:!this.dataChanged||this.saving},[t[15]||(t[15]=e("i",{class:"bi bi-arrow-clockwise me-2"},null,-1)),a(o,{t:"Reset"})],8,re),e("button",{class:"btn bg-primary-subtle border-primary-subtle text-primary-emphasis rounded-3 px-3 py-2 shadow",disabled:!this.dataChanged||this.saving,onClick:t[11]||(t[11]=s=>this.savePeer())},[t[16]||(t[16]=e("i",{class:"bi bi-save-fill me-2"},null,-1)),a(o,{t:"Save"})],8,pe)]),t[20]||(t[20]=e("hr",null,null,-1)),e("div",ue,[e("strong",null,[a(o,{t:"Reset Data Usage"})]),e("div",ce,[e("button",{class:"btn bg-primary-subtle text-primary-emphasis rounded-3 flex-grow-1 shadow-sm",onClick:t[12]||(t[12]=s=>this.resetPeerData("total"))},[t[17]||(t[17]=e("i",{class:"bi bi-arrow-down-up me-2"},null,-1)),a(o,{t:"Total"})]),e("button",{class:"btn bg-primary-subtle text-primary-emphasis rounded-3 flex-grow-1 shadow-sm",onClick:t[13]||(t[13]=s=>this.resetPeerData("receive"))},[t[18]||(t[18]=e("i",{class:"bi bi-arrow-down me-2"},null,-1)),a(o,{t:"Received"})]),e("button",{class:"btn bg-primary-subtle text-primary-emphasis rounded-3 flex-grow-1 shadow-sm",onClick:t[14]||(t[14]=s=>this.resetPeerData("sent"))},[t[19]||(t[19]=e("i",{class:"bi bi-arrow-up me-2"},null,-1)),a(o,{t:"Sent"})])])])])])):f("",!0)])])])])}const xe=u(v,[["render",me],["__scopeId","data-v-12b3ae8e"]]);export{xe as default}; diff --git a/src/static/app/dist/assets/peerShareLinkModal-5XXDseK9.js b/src/static/app/dist/assets/peerShareLinkModal-DKEiBJ_g.js similarity index 97% rename from src/static/app/dist/assets/peerShareLinkModal-5XXDseK9.js rename to src/static/app/dist/assets/peerShareLinkModal-DKEiBJ_g.js index 6c88aed..7d42d7a 100644 --- a/src/static/app/dist/assets/peerShareLinkModal-5XXDseK9.js +++ b/src/static/app/dist/assets/peerShareLinkModal-DKEiBJ_g.js @@ -1 +1 @@ -import{_ as L,r as y,O as H,H as T,a as i,c,b as e,t as B,e as x,n as w,A as P,g as U,D as N,E as A,k,d as r,m as _,y as C,u as $,G as D,v as V,w as E,s as R,i as g,S as W}from"./index-CfPziasH.js";import{d as M}from"./dayjs.min-C4BEB1lt.js";import{V as j}from"./vue-datepicker-BZlVex04.js";import{L as p}from"./localeText-CyxQ0Kz3.js";const O={class:"card rounded-0 border-start-0 border-bottom-0 bg-body-secondary",style:{height:"400px",overflow:"scroll"}},J={class:"card-body"},q={key:0,class:"alert alert-danger rounded-3"},G={class:"font-monospace"},z=["innerText"],F={__name:"peerShareWithEmailBodyPreview",props:["body","selectedPeer"],async setup(s){let t,f;const m=s,b=y(""),h=y(!1),n=y(""),l=async()=>{m.body&&(h.value=!1,b.value="",await P("/api/email/previewBody",{Body:m.body,ConfigurationName:m.selectedPeer.configuration.Name,Peer:m.selectedPeer.id},o=>{o.status?b.value=o.data:n.value=o.message,h.value=!o.status}))};[t,f]=H(()=>l()),await t,f();let d;return T(()=>m.body,async()=>{d===void 0?d=setTimeout(async()=>{await l()},500):(clearTimeout(d),d=setTimeout(async()=>{await l()},500))}),(o,S)=>(i(),c("div",O,[e("div",J,[h.value&&s.body?(i(),c("div",q,[S[0]||(S[0]=e("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),e("span",G,B(n.value),1)])):x("",!0),s.body?(i(),c("div",{key:1,class:w({"opacity-50":h.value}),innerText:b.value},null,10,z)):x("",!0)])]))}},K=L(F,[["__scopeId","data-v-8cfb4d4d"]]),Q={key:0},X={class:"mb-3"},Z={class:"position-relative"},ee=["disabled","placeholder"],te={class:"position-relative"},se=["placeholder","disabled"],ae={class:"row g-0"},oe=["disabled","placeholder"],ie={key:0,class:"col-6"},le={class:"card border-top-0 rounded-top-0 rounded-bottom-3 bg-body-tertiary",style:{border:"var(--bs-border-width) solid var(--bs-border-color)"}},re={class:"card-body d-flex flex-column gap-2"},ne={class:"form-check form-switch ms-auto"},de={class:"form-check-label",for:"livePreview"},ce={class:"form-check form-switch"},ue={class:"form-check-label",for:"includeAttachment"},me=["disabled"],he={key:0},pe={key:1},be={key:1},fe={__name:"peerShareWithEmail",props:["dataCopy","selectedPeer"],emits:["fullscreen"],async setup(s,{emit:t}){let f,m;const b=s,h=y(!1);[f,m]=H(()=>U("/api/email/ready",{},v=>{h.value=v.status})),await f,m();const n=N(),l=A({Receiver:"",Body:n.Configuration.Email.email_template,Subject:"",IncludeAttachment:!1,ConfigurationName:b.selectedPeer.configuration.Name,Peer:b.selectedPeer.id}),d=y(!1),o=y(!1),S=async()=>{o.value=!0,await P("/api/email/send",l,v=>{v.status?n.newMessage("Server","Email sent successfully!","success"):n.newMessage("Server",`Email sent failed! Reason: ${v.message}`,"danger"),o.value=!1})},Y=t;return T(d,()=>{Y("fullscreen",d.value)}),(v,a)=>{const I=k("RouterLink");return h.value?(i(),c("div",Q,[e("h6",X,[r(p,{t:"Share with Email"})]),e("form",{class:"d-flex gap-3 flex-column",onSubmit:a[5]||(a[5]=u=>{u.preventDefault(),S()})},[e("div",null,[e("div",Z,[a[6]||(a[6]=e("i",{class:"bi bi-person-circle",style:{position:"absolute",top:"0.4rem",left:"0.75rem"}},null,-1)),_(e("input",{type:"email",class:"form-control rounded-top-3 rounded-bottom-0",style:{"padding-left":"calc( 0.75rem + 24px )"},"onUpdate:modelValue":a[0]||(a[0]=u=>l.Receiver=u),disabled:o.value,placeholder:$(D)("Who are you sending to?"),required:"",id:"email_receiver","aria-describedby":"emailHelp"},null,8,ee),[[C,l.Receiver]])]),e("div",te,[a[7]||(a[7]=e("i",{class:"bi bi-hash",style:{position:"absolute",top:"0.4rem",left:"0.75rem"}},null,-1)),_(e("input",{type:"text",class:"form-control rounded-0 border-top-0 border-bottom-0",style:{"padding-left":"calc( 0.75rem + 24px )"},placeholder:$(D)("What's the subject?"),disabled:o.value,"onUpdate:modelValue":a[1]||(a[1]=u=>l.Subject=u),id:"email_subject","aria-describedby":"emailHelp"},null,8,se),[[C,l.Subject]])]),e("div",ae,[e("div",{class:w([d.value?"col-6":"col-12"])},[_(e("textarea",{class:"form-control rounded-top-0 rounded-bottom-0 font-monospace border-bottom-0","onUpdate:modelValue":a[2]||(a[2]=u=>l.Body=u),disabled:o.value,placeholder:$(D)("What's the body?"),style:{height:"400px","max-height":"400px"}},null,8,oe),[[C,l.Body]])],2),d.value?(i(),c("div",ie,[r(K,{body:l.Body,selectedPeer:s.selectedPeer},null,8,["body","selectedPeer"])])):x("",!0)]),e("div",le,[e("div",re,[e("div",ne,[_(e("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":a[3]||(a[3]=u=>d.value=u),role:"switch",id:"livePreview"},null,512),[[V,d.value]]),e("label",de,[r(p,{t:"Live Preview"})])])])])]),e("div",ce,[_(e("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":a[4]||(a[4]=u=>l.IncludeAttachment=u),role:"switch",id:"includeAttachment"},null,512),[[V,l.IncludeAttachment]]),e("label",ue,[r(p,{t:"Include configuration file as an attachment"})])]),e("button",{disabled:o.value,class:"btn bg-primary-subtle text-primary-emphasis border-primary-subtle rounded-3"},[o.value?(i(),c("span",pe,[a[9]||(a[9]=e("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),r(p,{t:"Sending..."})])):(i(),c("span",he,[a[8]||(a[8]=e("i",{class:"bi bi-send me-2"},null,-1)),r(p,{t:"Send"})]))],8,me)],32)])):(i(),c("div",be,[e("small",null,[r(p,{t:"SMTP is not configured, please navigate to "}),r(I,{to:"/settings"},{default:E(()=>[r(p,{t:"Settings"})]),_:1}),r(p,{t:" to finish setup"})])]))}}},ye=L(fe,[["__scopeId","data-v-6e705c87"]]),ve={name:"peerShareLinkModal",props:{selectedPeer:Object},components:{PeerShareWithEmail:ye,LocaleText:p,VueDatePicker:j},data(){return{dataCopy:void 0,loading:!1,fullscreen:!1}},setup(){return{store:N()}},mounted(){this.dataCopy=JSON.parse(JSON.stringify(this.selectedPeer.ShareLink)).at(0)},watch:{"selectedPeer.ShareLink":{deep:!0,handler(s,t){t.length!==s.length&&(this.dataCopy=JSON.parse(JSON.stringify(this.selectedPeer.ShareLink)).at(0))}}},methods:{startSharing(){this.loading=!0,P("/api/sharePeer/create",{Configuration:this.selectedPeer.configuration.Name,Peer:this.selectedPeer.id,ExpireDate:M().add(7,"d").format("YYYY-MM-DD HH:mm:ss")},s=>{s.status?(this.selectedPeer.ShareLink=s.data,this.dataCopy=s.data.at(0)):this.store.newMessage("Server","Share link failed to create. Reason: "+s.message,"danger"),this.loading=!1})},updateLinkExpireDate(){P("/api/sharePeer/update",this.dataCopy,s=>{s.status?(this.dataCopy=s.data.at(0),this.selectedPeer.ShareLink=s.data,this.store.newMessage("Server","Link expire date updated","success")):this.store.newMessage("Server","Link expire date failed to update. Reason: "+s.message,"danger"),this.loading=!1})},stopSharing(){this.loading=!0,this.dataCopy.ExpireDate=M().format("YYYY-MM-DD HH:mm:ss"),this.updateLinkExpireDate()},parseTime(s){s?this.dataCopy.ExpireDate=M(s).format("YYYY-MM-DD HH:mm:ss"):this.dataCopy.ExpireDate=void 0,this.updateLinkExpireDate()}},computed:{getUrl(){const s=this.store.getActiveCrossServer();return s?`${s.host}/${this.$router.resolve({path:"/share",query:{ShareID:this.dataCopy.ShareID}}).href}`:window.location.origin+window.location.pathname+this.$router.resolve({path:"/share",query:{ShareID:this.dataCopy.ShareID}}).href}}},_e={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},ge={class:"container d-flex h-100 w-100"},Se={class:"card rounded-3 shadow flex-grow-1"},ke={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4"},xe={class:"mb-0"},we={key:0,class:"card-body px-4 pb-4"},Pe={key:0},Ce={class:"mb-3 text-muted"},$e=["disabled"],De={key:1},Me={class:"d-flex gap-2 mb-4"},Ee=["href"],Le={class:"d-flex flex-column gap-2 mb-3"},Ve=["disabled"],He={class:"text-muted"};function Te(s,t,f,m,b,h){const n=k("LocaleText"),l=k("VueDatePicker"),d=k("PeerShareWithEmail");return i(),c("div",_e,[e("div",ge,[e("div",{class:"m-auto modal-dialog-centered dashboardModal",style:R([this.fullscreen?"width: 100%":"width: 700px"])},[e("div",Se,[e("div",ke,[e("h4",xe,[r(n,{t:"Share Peer"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:t[0]||(t[0]=o=>this.$emit("close"))})]),this.selectedPeer.ShareLink?(i(),c("div",we,[this.dataCopy?(i(),c("div",De,[e("div",Me,[t[5]||(t[5]=e("i",{class:"bi bi-link-45deg"},null,-1)),e("a",{href:this.getUrl,class:"text-decoration-none",target:"_blank"},B(h.getUrl),9,Ee)]),e("div",Le,[e("small",null,[t[6]||(t[6]=e("i",{class:"bi bi-calendar me-2"},null,-1)),r(n,{t:"Expire At"})]),r(l,{is24:!0,"min-date":new Date,"model-value":this.dataCopy.ExpireDate,"onUpdate:modelValue":this.parseTime,"time-picker-inline":"",format:"yyyy-MM-dd HH:mm:ss","preview-format":"yyyy-MM-dd HH:mm:ss",dark:this.store.Configuration.Server.dashboard_theme==="dark"},null,8,["min-date","model-value","onUpdate:modelValue","dark"])]),e("button",{onClick:t[2]||(t[2]=o=>this.stopSharing()),disabled:this.loading,class:"w-100 btn bg-danger-subtle text-danger-emphasis border-1 border-danger-subtle rounded-3 shadow-sm"},[e("span",{class:w({"animate__animated animate__flash animate__infinite animate__slower":this.loading})},t[7]||(t[7]=[e("i",{class:"bi bi-send-slash-fill me-2"},null,-1)]),2),this.loading?(i(),g(n,{key:0,t:"Stop Sharing..."})):(i(),g(n,{key:1,t:"Stop Sharing"}))],8,Ve),t[9]||(t[9]=e("hr",null,null,-1)),(i(),g(W,null,{fallback:E(()=>[e("h6",He,[t[8]||(t[8]=e("span",{class:"spinner-border me-2 spinner-border-sm",role:"status"},null,-1)),r(n,{t:"Checking SMTP Configuration..."})])]),default:E(()=>[r(d,{onFullscreen:t[3]||(t[3]=o=>{this.fullscreen=o}),selectedPeer:f.selectedPeer,dataCopy:b.dataCopy},null,8,["selectedPeer","dataCopy"])]),_:1}))])):(i(),c("div",Pe,[e("h6",Ce,[r(n,{t:"Currently the peer is not sharing"})]),e("button",{onClick:t[1]||(t[1]=o=>this.startSharing()),disabled:this.loading,class:"w-100 btn bg-success-subtle text-success-emphasis border-1 border-success-subtle rounded-3 shadow-sm"},[e("span",{class:w({"animate__animated animate__flash animate__infinite animate__slower":this.loading})},t[4]||(t[4]=[e("i",{class:"bi bi-send-fill me-2"},null,-1)]),2),this.loading?(i(),g(n,{key:0,t:"Sharing..."})):(i(),g(n,{key:1,t:"Start Sharing"}))],8,$e)]))])):x("",!0)])],4)])])}const Ue=L(ve,[["render",Te]]);export{Ue as default}; +import{_ as L,r as y,O as H,H as T,a as i,c,b as e,t as B,e as x,n as w,A as P,g as U,D as N,E as A,k,d as r,m as _,y as C,u as $,G as D,v as V,w as E,s as R,i as g,S as W}from"./index-AzYVPyhh.js";import{d as M}from"./dayjs.min-DO3nadR-.js";import{V as j}from"./vue-datepicker-Co-zpMN6.js";import{L as p}from"./localeText-qJNpKS91.js";const O={class:"card rounded-0 border-start-0 border-bottom-0 bg-body-secondary",style:{height:"400px",overflow:"scroll"}},J={class:"card-body"},q={key:0,class:"alert alert-danger rounded-3"},G={class:"font-monospace"},z=["innerText"],F={__name:"peerShareWithEmailBodyPreview",props:["body","selectedPeer"],async setup(s){let t,f;const m=s,b=y(""),h=y(!1),n=y(""),l=async()=>{m.body&&(h.value=!1,b.value="",await P("/api/email/previewBody",{Body:m.body,ConfigurationName:m.selectedPeer.configuration.Name,Peer:m.selectedPeer.id},o=>{o.status?b.value=o.data:n.value=o.message,h.value=!o.status}))};[t,f]=H(()=>l()),await t,f();let d;return T(()=>m.body,async()=>{d===void 0?d=setTimeout(async()=>{await l()},500):(clearTimeout(d),d=setTimeout(async()=>{await l()},500))}),(o,S)=>(i(),c("div",O,[e("div",J,[h.value&&s.body?(i(),c("div",q,[S[0]||(S[0]=e("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),e("span",G,B(n.value),1)])):x("",!0),s.body?(i(),c("div",{key:1,class:w({"opacity-50":h.value}),innerText:b.value},null,10,z)):x("",!0)])]))}},K=L(F,[["__scopeId","data-v-8cfb4d4d"]]),Q={key:0},X={class:"mb-3"},Z={class:"position-relative"},ee=["disabled","placeholder"],te={class:"position-relative"},se=["placeholder","disabled"],ae={class:"row g-0"},oe=["disabled","placeholder"],ie={key:0,class:"col-6"},le={class:"card border-top-0 rounded-top-0 rounded-bottom-3 bg-body-tertiary",style:{border:"var(--bs-border-width) solid var(--bs-border-color)"}},re={class:"card-body d-flex flex-column gap-2"},ne={class:"form-check form-switch ms-auto"},de={class:"form-check-label",for:"livePreview"},ce={class:"form-check form-switch"},ue={class:"form-check-label",for:"includeAttachment"},me=["disabled"],he={key:0},pe={key:1},be={key:1},fe={__name:"peerShareWithEmail",props:["dataCopy","selectedPeer"],emits:["fullscreen"],async setup(s,{emit:t}){let f,m;const b=s,h=y(!1);[f,m]=H(()=>U("/api/email/ready",{},v=>{h.value=v.status})),await f,m();const n=N(),l=A({Receiver:"",Body:n.Configuration.Email.email_template,Subject:"",IncludeAttachment:!1,ConfigurationName:b.selectedPeer.configuration.Name,Peer:b.selectedPeer.id}),d=y(!1),o=y(!1),S=async()=>{o.value=!0,await P("/api/email/send",l,v=>{v.status?n.newMessage("Server","Email sent successfully!","success"):n.newMessage("Server",`Email sent failed! Reason: ${v.message}`,"danger"),o.value=!1})},Y=t;return T(d,()=>{Y("fullscreen",d.value)}),(v,a)=>{const I=k("RouterLink");return h.value?(i(),c("div",Q,[e("h6",X,[r(p,{t:"Share with Email"})]),e("form",{class:"d-flex gap-3 flex-column",onSubmit:a[5]||(a[5]=u=>{u.preventDefault(),S()})},[e("div",null,[e("div",Z,[a[6]||(a[6]=e("i",{class:"bi bi-person-circle",style:{position:"absolute",top:"0.4rem",left:"0.75rem"}},null,-1)),_(e("input",{type:"email",class:"form-control rounded-top-3 rounded-bottom-0",style:{"padding-left":"calc( 0.75rem + 24px )"},"onUpdate:modelValue":a[0]||(a[0]=u=>l.Receiver=u),disabled:o.value,placeholder:$(D)("Who are you sending to?"),required:"",id:"email_receiver","aria-describedby":"emailHelp"},null,8,ee),[[C,l.Receiver]])]),e("div",te,[a[7]||(a[7]=e("i",{class:"bi bi-hash",style:{position:"absolute",top:"0.4rem",left:"0.75rem"}},null,-1)),_(e("input",{type:"text",class:"form-control rounded-0 border-top-0 border-bottom-0",style:{"padding-left":"calc( 0.75rem + 24px )"},placeholder:$(D)("What's the subject?"),disabled:o.value,"onUpdate:modelValue":a[1]||(a[1]=u=>l.Subject=u),id:"email_subject","aria-describedby":"emailHelp"},null,8,se),[[C,l.Subject]])]),e("div",ae,[e("div",{class:w([d.value?"col-6":"col-12"])},[_(e("textarea",{class:"form-control rounded-top-0 rounded-bottom-0 font-monospace border-bottom-0","onUpdate:modelValue":a[2]||(a[2]=u=>l.Body=u),disabled:o.value,placeholder:$(D)("What's the body?"),style:{height:"400px","max-height":"400px"}},null,8,oe),[[C,l.Body]])],2),d.value?(i(),c("div",ie,[r(K,{body:l.Body,selectedPeer:s.selectedPeer},null,8,["body","selectedPeer"])])):x("",!0)]),e("div",le,[e("div",re,[e("div",ne,[_(e("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":a[3]||(a[3]=u=>d.value=u),role:"switch",id:"livePreview"},null,512),[[V,d.value]]),e("label",de,[r(p,{t:"Live Preview"})])])])])]),e("div",ce,[_(e("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":a[4]||(a[4]=u=>l.IncludeAttachment=u),role:"switch",id:"includeAttachment"},null,512),[[V,l.IncludeAttachment]]),e("label",ue,[r(p,{t:"Include configuration file as an attachment"})])]),e("button",{disabled:o.value,class:"btn bg-primary-subtle text-primary-emphasis border-primary-subtle rounded-3"},[o.value?(i(),c("span",pe,[a[9]||(a[9]=e("span",{class:"spinner-border spinner-border-sm me-2"},null,-1)),r(p,{t:"Sending..."})])):(i(),c("span",he,[a[8]||(a[8]=e("i",{class:"bi bi-send me-2"},null,-1)),r(p,{t:"Send"})]))],8,me)],32)])):(i(),c("div",be,[e("small",null,[r(p,{t:"SMTP is not configured, please navigate to "}),r(I,{to:"/settings"},{default:E(()=>[r(p,{t:"Settings"})]),_:1}),r(p,{t:" to finish setup"})])]))}}},ye=L(fe,[["__scopeId","data-v-6e705c87"]]),ve={name:"peerShareLinkModal",props:{selectedPeer:Object},components:{PeerShareWithEmail:ye,LocaleText:p,VueDatePicker:j},data(){return{dataCopy:void 0,loading:!1,fullscreen:!1}},setup(){return{store:N()}},mounted(){this.dataCopy=JSON.parse(JSON.stringify(this.selectedPeer.ShareLink)).at(0)},watch:{"selectedPeer.ShareLink":{deep:!0,handler(s,t){t.length!==s.length&&(this.dataCopy=JSON.parse(JSON.stringify(this.selectedPeer.ShareLink)).at(0))}}},methods:{startSharing(){this.loading=!0,P("/api/sharePeer/create",{Configuration:this.selectedPeer.configuration.Name,Peer:this.selectedPeer.id,ExpireDate:M().add(7,"d").format("YYYY-MM-DD HH:mm:ss")},s=>{s.status?(this.selectedPeer.ShareLink=s.data,this.dataCopy=s.data.at(0)):this.store.newMessage("Server","Share link failed to create. Reason: "+s.message,"danger"),this.loading=!1})},updateLinkExpireDate(){P("/api/sharePeer/update",this.dataCopy,s=>{s.status?(this.dataCopy=s.data.at(0),this.selectedPeer.ShareLink=s.data,this.store.newMessage("Server","Link expire date updated","success")):this.store.newMessage("Server","Link expire date failed to update. Reason: "+s.message,"danger"),this.loading=!1})},stopSharing(){this.loading=!0,this.dataCopy.ExpireDate=M().format("YYYY-MM-DD HH:mm:ss"),this.updateLinkExpireDate()},parseTime(s){s?this.dataCopy.ExpireDate=M(s).format("YYYY-MM-DD HH:mm:ss"):this.dataCopy.ExpireDate=void 0,this.updateLinkExpireDate()}},computed:{getUrl(){const s=this.store.getActiveCrossServer();return s?`${s.host}/${this.$router.resolve({path:"/share",query:{ShareID:this.dataCopy.ShareID}}).href}`:window.location.origin+window.location.pathname+this.$router.resolve({path:"/share",query:{ShareID:this.dataCopy.ShareID}}).href}}},_e={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll"},ge={class:"container d-flex h-100 w-100"},Se={class:"card rounded-3 shadow flex-grow-1"},ke={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4"},xe={class:"mb-0"},we={key:0,class:"card-body px-4 pb-4"},Pe={key:0},Ce={class:"mb-3 text-muted"},$e=["disabled"],De={key:1},Me={class:"d-flex gap-2 mb-4"},Ee=["href"],Le={class:"d-flex flex-column gap-2 mb-3"},Ve=["disabled"],He={class:"text-muted"};function Te(s,t,f,m,b,h){const n=k("LocaleText"),l=k("VueDatePicker"),d=k("PeerShareWithEmail");return i(),c("div",_e,[e("div",ge,[e("div",{class:"m-auto modal-dialog-centered dashboardModal",style:R([this.fullscreen?"width: 100%":"width: 700px"])},[e("div",Se,[e("div",ke,[e("h4",xe,[r(n,{t:"Share Peer"})]),e("button",{type:"button",class:"btn-close ms-auto",onClick:t[0]||(t[0]=o=>this.$emit("close"))})]),this.selectedPeer.ShareLink?(i(),c("div",we,[this.dataCopy?(i(),c("div",De,[e("div",Me,[t[5]||(t[5]=e("i",{class:"bi bi-link-45deg"},null,-1)),e("a",{href:this.getUrl,class:"text-decoration-none",target:"_blank"},B(h.getUrl),9,Ee)]),e("div",Le,[e("small",null,[t[6]||(t[6]=e("i",{class:"bi bi-calendar me-2"},null,-1)),r(n,{t:"Expire At"})]),r(l,{is24:!0,"min-date":new Date,"model-value":this.dataCopy.ExpireDate,"onUpdate:modelValue":this.parseTime,"time-picker-inline":"",format:"yyyy-MM-dd HH:mm:ss","preview-format":"yyyy-MM-dd HH:mm:ss",dark:this.store.Configuration.Server.dashboard_theme==="dark"},null,8,["min-date","model-value","onUpdate:modelValue","dark"])]),e("button",{onClick:t[2]||(t[2]=o=>this.stopSharing()),disabled:this.loading,class:"w-100 btn bg-danger-subtle text-danger-emphasis border-1 border-danger-subtle rounded-3 shadow-sm"},[e("span",{class:w({"animate__animated animate__flash animate__infinite animate__slower":this.loading})},t[7]||(t[7]=[e("i",{class:"bi bi-send-slash-fill me-2"},null,-1)]),2),this.loading?(i(),g(n,{key:0,t:"Stop Sharing..."})):(i(),g(n,{key:1,t:"Stop Sharing"}))],8,Ve),t[9]||(t[9]=e("hr",null,null,-1)),(i(),g(W,null,{fallback:E(()=>[e("h6",He,[t[8]||(t[8]=e("span",{class:"spinner-border me-2 spinner-border-sm",role:"status"},null,-1)),r(n,{t:"Checking SMTP Configuration..."})])]),default:E(()=>[r(d,{onFullscreen:t[3]||(t[3]=o=>{this.fullscreen=o}),selectedPeer:f.selectedPeer,dataCopy:b.dataCopy},null,8,["selectedPeer","dataCopy"])]),_:1}))])):(i(),c("div",Pe,[e("h6",Ce,[r(n,{t:"Currently the peer is not sharing"})]),e("button",{onClick:t[1]||(t[1]=o=>this.startSharing()),disabled:this.loading,class:"w-100 btn bg-success-subtle text-success-emphasis border-1 border-success-subtle rounded-3 shadow-sm"},[e("span",{class:w({"animate__animated animate__flash animate__infinite animate__slower":this.loading})},t[4]||(t[4]=[e("i",{class:"bi bi-send-fill me-2"},null,-1)]),2),this.loading?(i(),g(n,{key:0,t:"Sharing..."})):(i(),g(n,{key:1,t:"Start Sharing"}))],8,$e)]))])):x("",!0)])],4)])])}const Ue=L(ve,[["render",Te]]);export{Ue as default}; diff --git a/src/static/app/dist/assets/ping-DuPgpLex.js b/src/static/app/dist/assets/ping-DmtDLU9i.js similarity index 98% rename from src/static/app/dist/assets/ping-DuPgpLex.js rename to src/static/app/dist/assets/ping-DmtDLU9i.js index 0412a75..f57bddd 100644 --- a/src/static/app/dist/assets/ping-DuPgpLex.js +++ b/src/static/app/dist/assets/ping-DmtDLU9i.js @@ -1 +1 @@ -import{_ as R,D as k,g as b,c as l,b as e,d,m as u,B as _,F as c,h as p,e as m,y as I,t as i,w as f,j as v,a as n,f as g,n as h,s as P,i as w,k as x}from"./index-CfPziasH.js";import{L as C}from"./localeText-CyxQ0Kz3.js";import{O as A}from"./osmap-C6nMOrBf.js";const S={name:"ping",components:{OSMap:A,LocaleText:C},data(){return{loading:!1,cips:{},selectedConfiguration:void 0,selectedPeer:void 0,selectedIp:void 0,count:4,pingResult:void 0,pinging:!1}},setup(){return{store:k()}},mounted(){b("/api/ping/getAllPeersIpAddress",{},a=>{a.status&&(this.loading=!0,this.cips=a.data,console.log(this.cips))})},methods:{execute(){this.selectedIp&&(this.pinging=!0,this.pingResult=void 0,b("/api/ping/execute",{ipAddress:this.selectedIp,count:this.count},a=>{a.status?this.pingResult=a.data:this.store.newMessage("Server",a.message,"danger"),this.pinging=!1}))}},watch:{selectedConfiguration(){this.selectedPeer=void 0,this.selectedIp=void 0},selectedPeer(){this.selectedIp=void 0}}},M={class:"mt-md-5 mt-3 text-body"},T={class:"container"},V={class:"row"},$={class:"col-sm-4 d-flex gap-2 flex-column"},L={class:"mb-1 text-muted",for:"configuration"},B=["disabled"],N=["value"],O={class:"mb-1 text-muted",for:"peer"},D=["disabled"],U=["value"],z={class:"mb-1 text-muted",for:"ip"},E=["disabled"],F={class:"d-flex align-items-center gap-2"},G={class:"text-muted"},j={class:"mb-1 text-muted",for:"ipAddress"},H=["disabled"],Y={class:"mb-1 text-muted",for:"count"},q={class:"d-flex gap-3 align-items-center"},J=["disabled"],K=["disabled"],Q={key:0,class:"d-block"},W={key:1,class:"d-block"},X={class:"col-sm-8 position-relative"},Z={key:"pingPlaceholder"},ee={key:"pingResult",class:"d-flex flex-column gap-2 w-100"},se={class:"card rounded-3 bg-transparent shadow-sm animate__animated animate__fadeIn",style:{"animation-delay":"0.15s"}},te={class:"card-body row"},ie={class:"col-sm"},ne={class:"mb-0 text-muted"},le={key:0,class:"col-sm"},de={class:"mb-0 text-muted"},oe={class:"card rounded-3 bg-transparent shadow-sm animate__animated animate__fadeIn",style:{"animation-delay":"0.3s"}},ae={class:"card-body"},re={class:"card rounded-3 bg-transparent shadow-sm animate__animated animate__fadeIn",style:{"animation-delay":"0.45s"}},ue={class:"card-body"},ce={class:"mb-0 text-muted"},pe={class:"card rounded-3 bg-transparent shadow-sm animate__animated animate__fadeIn",style:{"animation-delay":"0.6s"}},me={class:"card-body"},ge={class:"mb-0 text-muted"};function _e(a,s,he,be,fe,ve){const o=x("LocaleText"),y=x("OSMap");return n(),l("div",M,[e("div",T,[s[19]||(s[19]=e("h3",{class:"mb-3 text-body"},"Ping",-1)),e("div",V,[e("div",$,[e("div",null,[e("label",L,[e("small",null,[d(o,{t:"Configuration"})])]),u(e("select",{class:"form-select","onUpdate:modelValue":s[0]||(s[0]=t=>this.selectedConfiguration=t),disabled:this.pinging},[s[7]||(s[7]=e("option",{disabled:"",selected:"",value:void 0},null,-1)),(n(!0),l(c,null,p(this.cips,(t,r)=>(n(),l("option",{value:r},i(r),9,N))),256))],8,B),[[_,this.selectedConfiguration]])]),e("div",null,[e("label",O,[e("small",null,[d(o,{t:"Peer"})])]),u(e("select",{id:"peer",class:"form-select","onUpdate:modelValue":s[1]||(s[1]=t=>this.selectedPeer=t),disabled:this.selectedConfiguration===void 0||this.pinging},[s[8]||(s[8]=e("option",{disabled:"",selected:"",value:void 0},null,-1)),this.selectedConfiguration!==void 0?(n(!0),l(c,{key:0},p(this.cips[this.selectedConfiguration],(t,r)=>(n(),l("option",{value:r},i(r),9,U))),256)):m("",!0)],8,D),[[_,this.selectedPeer]])]),e("div",null,[e("label",z,[e("small",null,[d(o,{t:"IP Address"})])]),u(e("select",{id:"ip",class:"form-select","onUpdate:modelValue":s[2]||(s[2]=t=>this.selectedIp=t),disabled:this.selectedPeer===void 0||this.pinging},[s[9]||(s[9]=e("option",{disabled:"",selected:"",value:void 0},null,-1)),this.selectedPeer!==void 0?(n(!0),l(c,{key:0},p(this.cips[this.selectedConfiguration][this.selectedPeer].allowed_ips,t=>(n(),l("option",null,i(t),1))),256)):m("",!0)],8,E),[[_,this.selectedIp]])]),e("div",F,[s[10]||(s[10]=e("div",{class:"flex-grow-1 border-top"},null,-1)),e("small",G,[d(o,{t:"OR"})]),s[11]||(s[11]=e("div",{class:"flex-grow-1 border-top"},null,-1))]),e("div",null,[e("label",j,[e("small",null,[d(o,{t:"Enter IP Address / Hostname"})])]),u(e("input",{class:"form-control",type:"text",id:"ipAddress",disabled:this.pinging,"onUpdate:modelValue":s[3]||(s[3]=t=>this.selectedIp=t)},null,8,H),[[I,this.selectedIp]])]),s[16]||(s[16]=e("div",{class:"w-100 border-top my-2"},null,-1)),e("div",null,[e("label",Y,[e("small",null,[d(o,{t:"Count"})])]),e("div",q,[e("button",{onClick:s[4]||(s[4]=t=>this.count--),disabled:this.count===1,class:"btn btn-sm bg-secondary-subtle text-secondary-emphasis"},s[12]||(s[12]=[e("i",{class:"bi bi-dash-lg"},null,-1)]),8,J),e("strong",null,i(this.count),1),e("button",{role:"button",onClick:s[5]||(s[5]=t=>this.count++),class:"btn btn-sm bg-secondary-subtle text-secondary-emphasis"},s[13]||(s[13]=[e("i",{class:"bi bi-plus-lg"},null,-1)]))])]),e("button",{class:"btn btn-primary rounded-3 mt-3 position-relative",disabled:!this.selectedIp||this.pinging,onClick:s[6]||(s[6]=t=>this.execute())},[d(v,{name:"slide"},{default:f(()=>[this.pinging?(n(),l("span",W,s[15]||(s[15]=[e("span",{class:"spinner-border spinner-border-sm","aria-hidden":"true"},null,-1),e("span",{class:"visually-hidden",role:"status"},"Loading...",-1)]))):(n(),l("span",Q,s[14]||(s[14]=[e("i",{class:"bi bi-person-walking me-2"},null,-1),g("Ping! ")])))]),_:1})],8,K)]),e("div",X,[d(v,{name:"ping"},{default:f(()=>[this.pingResult?(n(),l("div",ee,[this.pingResult.geo&&this.pingResult.geo.status==="success"?(n(),w(y,{key:0,d:this.pingResult},null,8,["d"])):m("",!0),e("div",se,[e("div",te,[e("div",ie,[e("p",ne,[e("small",null,[d(o,{t:"IP Address"})])]),g(" "+i(this.pingResult.address),1)]),this.pingResult.geo&&this.pingResult.geo.status==="success"?(n(),l("div",le,[e("p",de,[e("small",null,[d(o,{t:"Geolocation"})])]),g(" "+i(this.pingResult.geo.city)+", "+i(this.pingResult.geo.country),1)])):m("",!0)])]),e("div",oe,[e("div",ae,[s[18]||(s[18]=e("p",{class:"mb-0 text-muted"},[e("small",null,"Is Alive")],-1)),e("span",{class:h([this.pingResult.is_alive?"text-success":"text-danger"])},[e("i",{class:h(["bi me-1",[this.pingResult.is_alive?"bi-check-circle-fill":"bi-x-circle-fill"]])},null,2),g(" "+i(this.pingResult.is_alive?"Yes":"No"),1)],2)])]),e("div",re,[e("div",ue,[e("p",ce,[e("small",null,[d(o,{t:"Average / Min / Max Round Trip Time"})])]),e("samp",null,i(this.pingResult.avg_rtt)+"ms / "+i(this.pingResult.min_rtt)+"ms / "+i(this.pingResult.max_rtt)+"ms ",1)])]),e("div",pe,[e("div",me,[e("p",ge,[e("small",null,[d(o,{t:"Sent / Received / Lost Package"})])]),e("samp",null,i(this.pingResult.package_sent)+" / "+i(this.pingResult.package_received)+" / "+i(this.pingResult.package_loss),1)])])])):(n(),l("div",Z,[s[17]||(s[17]=e("div",{class:"pingPlaceholder bg-body-secondary rounded-3 mb-3",style:{height:"300px"}},null,-1)),(n(),l(c,null,p(4,t=>e("div",{class:h(["pingPlaceholder bg-body-secondary rounded-3 mb-3",{"animate__animated animate__flash animate__slower animate__infinite":this.pinging}]),style:P({"animation-delay":`${t*.15}s`})},null,6)),64))]))]),_:1})])])])])}const ke=R(S,[["render",_e],["__scopeId","data-v-a08ce97e"]]);export{ke as default}; +import{_ as R,D as k,g as b,c as l,b as e,d,m as u,B as _,F as c,h as p,e as m,y as I,t as i,w as f,j as v,a as n,f as g,n as h,s as P,i as w,k as x}from"./index-AzYVPyhh.js";import{L as C}from"./localeText-qJNpKS91.js";import{O as A}from"./osmap-iyZf8b7y.js";const S={name:"ping",components:{OSMap:A,LocaleText:C},data(){return{loading:!1,cips:{},selectedConfiguration:void 0,selectedPeer:void 0,selectedIp:void 0,count:4,pingResult:void 0,pinging:!1}},setup(){return{store:k()}},mounted(){b("/api/ping/getAllPeersIpAddress",{},a=>{a.status&&(this.loading=!0,this.cips=a.data,console.log(this.cips))})},methods:{execute(){this.selectedIp&&(this.pinging=!0,this.pingResult=void 0,b("/api/ping/execute",{ipAddress:this.selectedIp,count:this.count},a=>{a.status?this.pingResult=a.data:this.store.newMessage("Server",a.message,"danger"),this.pinging=!1}))}},watch:{selectedConfiguration(){this.selectedPeer=void 0,this.selectedIp=void 0},selectedPeer(){this.selectedIp=void 0}}},M={class:"mt-md-5 mt-3 text-body"},T={class:"container"},V={class:"row"},$={class:"col-sm-4 d-flex gap-2 flex-column"},L={class:"mb-1 text-muted",for:"configuration"},B=["disabled"],N=["value"],O={class:"mb-1 text-muted",for:"peer"},D=["disabled"],U=["value"],z={class:"mb-1 text-muted",for:"ip"},E=["disabled"],F={class:"d-flex align-items-center gap-2"},G={class:"text-muted"},j={class:"mb-1 text-muted",for:"ipAddress"},H=["disabled"],Y={class:"mb-1 text-muted",for:"count"},q={class:"d-flex gap-3 align-items-center"},J=["disabled"],K=["disabled"],Q={key:0,class:"d-block"},W={key:1,class:"d-block"},X={class:"col-sm-8 position-relative"},Z={key:"pingPlaceholder"},ee={key:"pingResult",class:"d-flex flex-column gap-2 w-100"},se={class:"card rounded-3 bg-transparent shadow-sm animate__animated animate__fadeIn",style:{"animation-delay":"0.15s"}},te={class:"card-body row"},ie={class:"col-sm"},ne={class:"mb-0 text-muted"},le={key:0,class:"col-sm"},de={class:"mb-0 text-muted"},oe={class:"card rounded-3 bg-transparent shadow-sm animate__animated animate__fadeIn",style:{"animation-delay":"0.3s"}},ae={class:"card-body"},re={class:"card rounded-3 bg-transparent shadow-sm animate__animated animate__fadeIn",style:{"animation-delay":"0.45s"}},ue={class:"card-body"},ce={class:"mb-0 text-muted"},pe={class:"card rounded-3 bg-transparent shadow-sm animate__animated animate__fadeIn",style:{"animation-delay":"0.6s"}},me={class:"card-body"},ge={class:"mb-0 text-muted"};function _e(a,s,he,be,fe,ve){const o=x("LocaleText"),y=x("OSMap");return n(),l("div",M,[e("div",T,[s[19]||(s[19]=e("h3",{class:"mb-3 text-body"},"Ping",-1)),e("div",V,[e("div",$,[e("div",null,[e("label",L,[e("small",null,[d(o,{t:"Configuration"})])]),u(e("select",{class:"form-select","onUpdate:modelValue":s[0]||(s[0]=t=>this.selectedConfiguration=t),disabled:this.pinging},[s[7]||(s[7]=e("option",{disabled:"",selected:"",value:void 0},null,-1)),(n(!0),l(c,null,p(this.cips,(t,r)=>(n(),l("option",{value:r},i(r),9,N))),256))],8,B),[[_,this.selectedConfiguration]])]),e("div",null,[e("label",O,[e("small",null,[d(o,{t:"Peer"})])]),u(e("select",{id:"peer",class:"form-select","onUpdate:modelValue":s[1]||(s[1]=t=>this.selectedPeer=t),disabled:this.selectedConfiguration===void 0||this.pinging},[s[8]||(s[8]=e("option",{disabled:"",selected:"",value:void 0},null,-1)),this.selectedConfiguration!==void 0?(n(!0),l(c,{key:0},p(this.cips[this.selectedConfiguration],(t,r)=>(n(),l("option",{value:r},i(r),9,U))),256)):m("",!0)],8,D),[[_,this.selectedPeer]])]),e("div",null,[e("label",z,[e("small",null,[d(o,{t:"IP Address"})])]),u(e("select",{id:"ip",class:"form-select","onUpdate:modelValue":s[2]||(s[2]=t=>this.selectedIp=t),disabled:this.selectedPeer===void 0||this.pinging},[s[9]||(s[9]=e("option",{disabled:"",selected:"",value:void 0},null,-1)),this.selectedPeer!==void 0?(n(!0),l(c,{key:0},p(this.cips[this.selectedConfiguration][this.selectedPeer].allowed_ips,t=>(n(),l("option",null,i(t),1))),256)):m("",!0)],8,E),[[_,this.selectedIp]])]),e("div",F,[s[10]||(s[10]=e("div",{class:"flex-grow-1 border-top"},null,-1)),e("small",G,[d(o,{t:"OR"})]),s[11]||(s[11]=e("div",{class:"flex-grow-1 border-top"},null,-1))]),e("div",null,[e("label",j,[e("small",null,[d(o,{t:"Enter IP Address / Hostname"})])]),u(e("input",{class:"form-control",type:"text",id:"ipAddress",disabled:this.pinging,"onUpdate:modelValue":s[3]||(s[3]=t=>this.selectedIp=t)},null,8,H),[[I,this.selectedIp]])]),s[16]||(s[16]=e("div",{class:"w-100 border-top my-2"},null,-1)),e("div",null,[e("label",Y,[e("small",null,[d(o,{t:"Count"})])]),e("div",q,[e("button",{onClick:s[4]||(s[4]=t=>this.count--),disabled:this.count===1,class:"btn btn-sm bg-secondary-subtle text-secondary-emphasis"},s[12]||(s[12]=[e("i",{class:"bi bi-dash-lg"},null,-1)]),8,J),e("strong",null,i(this.count),1),e("button",{role:"button",onClick:s[5]||(s[5]=t=>this.count++),class:"btn btn-sm bg-secondary-subtle text-secondary-emphasis"},s[13]||(s[13]=[e("i",{class:"bi bi-plus-lg"},null,-1)]))])]),e("button",{class:"btn btn-primary rounded-3 mt-3 position-relative",disabled:!this.selectedIp||this.pinging,onClick:s[6]||(s[6]=t=>this.execute())},[d(v,{name:"slide"},{default:f(()=>[this.pinging?(n(),l("span",W,s[15]||(s[15]=[e("span",{class:"spinner-border spinner-border-sm","aria-hidden":"true"},null,-1),e("span",{class:"visually-hidden",role:"status"},"Loading...",-1)]))):(n(),l("span",Q,s[14]||(s[14]=[e("i",{class:"bi bi-person-walking me-2"},null,-1),g("Ping! ")])))]),_:1})],8,K)]),e("div",X,[d(v,{name:"ping"},{default:f(()=>[this.pingResult?(n(),l("div",ee,[this.pingResult.geo&&this.pingResult.geo.status==="success"?(n(),w(y,{key:0,d:this.pingResult},null,8,["d"])):m("",!0),e("div",se,[e("div",te,[e("div",ie,[e("p",ne,[e("small",null,[d(o,{t:"IP Address"})])]),g(" "+i(this.pingResult.address),1)]),this.pingResult.geo&&this.pingResult.geo.status==="success"?(n(),l("div",le,[e("p",de,[e("small",null,[d(o,{t:"Geolocation"})])]),g(" "+i(this.pingResult.geo.city)+", "+i(this.pingResult.geo.country),1)])):m("",!0)])]),e("div",oe,[e("div",ae,[s[18]||(s[18]=e("p",{class:"mb-0 text-muted"},[e("small",null,"Is Alive")],-1)),e("span",{class:h([this.pingResult.is_alive?"text-success":"text-danger"])},[e("i",{class:h(["bi me-1",[this.pingResult.is_alive?"bi-check-circle-fill":"bi-x-circle-fill"]])},null,2),g(" "+i(this.pingResult.is_alive?"Yes":"No"),1)],2)])]),e("div",re,[e("div",ue,[e("p",ce,[e("small",null,[d(o,{t:"Average / Min / Max Round Trip Time"})])]),e("samp",null,i(this.pingResult.avg_rtt)+"ms / "+i(this.pingResult.min_rtt)+"ms / "+i(this.pingResult.max_rtt)+"ms ",1)])]),e("div",pe,[e("div",me,[e("p",ge,[e("small",null,[d(o,{t:"Sent / Received / Lost Package"})])]),e("samp",null,i(this.pingResult.package_sent)+" / "+i(this.pingResult.package_received)+" / "+i(this.pingResult.package_loss),1)])])])):(n(),l("div",Z,[s[17]||(s[17]=e("div",{class:"pingPlaceholder bg-body-secondary rounded-3 mb-3",style:{height:"300px"}},null,-1)),(n(),l(c,null,p(4,t=>e("div",{class:h(["pingPlaceholder bg-body-secondary rounded-3 mb-3",{"animate__animated animate__flash animate__slower animate__infinite":this.pinging}]),style:P({"animation-delay":`${t*.15}s`})},null,6)),64))]))]),_:1})])])])])}const ke=R(S,[["render",_e],["__scopeId","data-v-a08ce97e"]]);export{ke as default}; diff --git a/src/static/app/dist/assets/protocolBadge-BwyLRUKo.js b/src/static/app/dist/assets/protocolBadge-Cbmuyguj.js similarity index 77% rename from src/static/app/dist/assets/protocolBadge-BwyLRUKo.js rename to src/static/app/dist/assets/protocolBadge-Cbmuyguj.js index 5d11500..bad112e 100644 --- a/src/static/app/dist/assets/protocolBadge-BwyLRUKo.js +++ b/src/static/app/dist/assets/protocolBadge-Cbmuyguj.js @@ -1 +1 @@ -import{L as r}from"./localeText-CyxQ0Kz3.js";import{a as t,c as n,f as i,i as s,e as a}from"./index-CfPziasH.js";const d={key:0,class:"badge wireguardBg rounded-3 shadow"},c={key:1,class:"badge amneziawgBg rounded-3 shadow"},u={__name:"protocolBadge",props:{protocol:String,mini:!1},setup(e){return(m,o)=>e.protocol==="wg"?(t(),n("span",d,[o[0]||(o[0]=i(" WireGuard ")),e.mini?a("",!0):(t(),s(r,{key:0,t:"Configuration"}))])):e.protocol==="awg"?(t(),n("span",c,[o[1]||(o[1]=i(" AmneziaWG ")),e.mini?a("",!0):(t(),s(r,{key:0,t:"Configuration"}))])):a("",!0)}};export{u as _}; +import{L as r}from"./localeText-qJNpKS91.js";import{a as t,c as n,f as i,i as s,e as a}from"./index-AzYVPyhh.js";const d={key:0,class:"badge wireguardBg rounded-3 shadow"},c={key:1,class:"badge amneziawgBg rounded-3 shadow"},u={__name:"protocolBadge",props:{protocol:String,mini:!1},setup(e){return(m,o)=>e.protocol==="wg"?(t(),n("span",d,[o[0]||(o[0]=i(" WireGuard ")),e.mini?a("",!0):(t(),s(r,{key:0,t:"Configuration"}))])):e.protocol==="awg"?(t(),n("span",c,[o[1]||(o[1]=i(" AmneziaWG ")),e.mini?a("",!0):(t(),s(r,{key:0,t:"Configuration"}))])):a("",!0)}};export{u as _}; diff --git a/src/static/app/dist/assets/restoreConfiguration-CPPo1_Tp.js b/src/static/app/dist/assets/restoreConfiguration-CJFuDOeh.js similarity index 98% rename from src/static/app/dist/assets/restoreConfiguration-CPPo1_Tp.js rename to src/static/app/dist/assets/restoreConfiguration-CJFuDOeh.js index 8fa7ddc..a7fd25e 100644 --- a/src/static/app/dist/assets/restoreConfiguration-CPPo1_Tp.js +++ b/src/static/app/dist/assets/restoreConfiguration-CJFuDOeh.js @@ -1,4 +1,4 @@ -import{_ as E,r as k,o as A,a as n,c as r,b as e,t as y,F as N,h as D,i as f,d as l,n as v,u as W,e as w,E as F,W as G,q as C,H as z,D as T,I as H,m as g,y as _,f as $,A as Z,g as J,w as B,j as V,k as Q}from"./index-CfPziasH.js";import{L as o}from"./localeText-CyxQ0Kz3.js";import{d as X}from"./dayjs.min-C4BEB1lt.js";import{_ as q}from"./protocolBadge-BwyLRUKo.js";import{p as O}from"./index-L60y6kc9.js";const ee={class:"card rounded-3 shadow-sm"},te={class:"mb-0 d-flex align-items-center gap-3"},se={class:"text-muted ms-auto d-block"},oe={key:0,class:"card-footer p-3 d-flex flex-column gap-2"},le=["onClick","id"],ne={class:"card-body d-flex p-3 gap-3 align-items-center"},ae={__name:"backupGroup",props:{configurationName:String,backups:Array,open:!1,selectedConfigurationBackup:Object,protocol:Array},emits:["select"],setup(m,{emit:u}){const t=m,h=u,p=k(t.open);return A(()=>{t.selectedConfigurationBackup&&document.querySelector(`#${t.selectedConfigurationBackup.filename.replace(".conf","")}`).scrollIntoView({behavior:"smooth"})}),(x,a)=>(n(),r("div",ee,[e("a",{role:"button",class:"card-body d-flex align-items-center text-decoration-none d-flex gap-3",onClick:a[0]||(a[0]=c=>p.value=!p.value)},[e("h6",te,[e("samp",null,y(m.configurationName),1),(n(!0),r(N,null,D(m.protocol,c=>(n(),f(q,{protocol:c},null,8,["protocol"]))),256))]),e("small",se,[l(o,{t:m.backups.length+(m.backups.length>1?" Backups":" Backup")},null,8,["t"])]),e("h5",{class:v(["mb-0 dropdownIcon text-muted",{active:p.value}])},a[1]||(a[1]=[e("i",{class:"bi bi-chevron-down"},null,-1)]),2)]),p.value?(n(),r("div",oe,[(n(!0),r(N,null,D(m.backups,c=>(n(),r("div",{class:"card rounded-3 shadow-sm animate__animated",key:c.filename,onClick:()=>{h("select",c)},id:c.filename.replace(".conf",""),role:"button"},[e("div",ne,[e("small",null,[a[2]||(a[2]=e("i",{class:"bi bi-file-earmark me-2"},null,-1)),e("samp",null,y(c.filename),1)]),e("small",null,[a[3]||(a[3]=e("i",{class:"bi bi-clock-history me-2"},null,-1)),e("samp",null,y(W(X)(c.backupDate).format("YYYY-MM-DD HH:mm:ss")),1)]),e("small",null,[a[4]||(a[4]=e("i",{class:"bi bi-database me-2"},null,-1)),c.database?(n(),f(o,{key:0,t:"Yes"})):(n(),f(o,{key:1,t:"No"}))]),a[5]||(a[5]=e("small",{class:"text-muted ms-auto"},[e("i",{class:"bi bi-chevron-right"})],-1))])],8,le))),128))])):w("",!0)]))}},ie=E(ae,[["__scopeId","data-v-ccf48ac7"]]),re={class:"d-flex flex-column gap-5",id:"confirmBackup"},de={class:"d-flex flex-column gap-3"},ue={class:"d-flex flex-column flex-sm-row align-items-start align-items-sm-center gap-3"},ce={class:"mb-0"},me={class:"text-muted mb-1"},fe={class:"mb-0"},pe={class:"text-muted mb-1",for:"ConfigurationName"},ve={class:"invalid-feedback"},be={key:0},ge={key:1},_e={class:"mb-0"},ke={class:"row g-3"},ye={class:"col-sm"},he={class:"text-muted mb-1",for:"PrivateKey"},xe={class:"input-group"},Ce={class:"col-sm"},Pe={class:"text-muted mb-1",for:"PublicKey"},we={class:"text-muted mb-1",for:"ListenPort"},$e={class:"invalid-feedback"},Be={key:0},Ne={key:1},De={class:"mb-0"},Ae={class:"text-muted mb-1 d-flex",for:"ListenPort"},Ie={class:"invalid-feedback"},Le={key:0},Se={key:1},Ue={class:"accordion",id:"newConfigurationOptionalAccordion"},Ke={class:"accordion-item"},Re={class:"accordion-header"},Ve={class:"accordion-button collapsed rounded-3",type:"button","data-bs-toggle":"collapse","data-bs-target":"#newConfigurationOptionalAccordionCollapse"},Oe={id:"newConfigurationOptionalAccordionCollapse",class:"accordion-collapse collapse","data-bs-parent":"#newConfigurationOptionalAccordion"},Ee={class:"accordion-body d-flex flex-column gap-3"},Te={class:"text-muted mb-1",for:"PreUp"},qe={class:"text-muted mb-1",for:"PreDown"},je={class:"text-muted mb-1",for:"PostUp"},Me={class:"text-muted mb-1",for:"PostDown"},Ye={class:"d-flex flex-column gap-3"},We={class:"d-flex flex-column flex-sm-row align-items-start align-items-sm-center gap-3"},Fe={class:"mb-0"},Ge={key:0},ze={class:"row g-3"},He={class:"col-sm"},Ze={class:"card text-bg-success rounded-3"},Je={class:"card-body"},Qe={class:"col-sm"},Xe={class:"card text-bg-warning rounded-3"},et={class:"card-body"},tt={class:"d-flex"},st=["disabled"],ot={__name:"confirmBackup",props:{selectedConfigurationBackup:Object},setup(m){const u=m,t=F({ConfigurationName:u.selectedConfigurationBackup.filename.split("_")[0],Backup:u.selectedConfigurationBackup.filename,Protocol:u.selectedConfigurationBackup.protocol}),h=u.selectedConfigurationBackup.content.split(` +import{_ as E,r as k,o as A,a as n,c as r,b as e,t as y,F as N,h as D,i as f,d as l,n as v,u as W,e as w,E as F,W as G,q as C,H as z,D as T,I as H,m as g,y as _,f as $,A as Z,g as J,w as B,j as V,k as Q}from"./index-AzYVPyhh.js";import{L as o}from"./localeText-qJNpKS91.js";import{d as X}from"./dayjs.min-DO3nadR-.js";import{_ as q}from"./protocolBadge-Cbmuyguj.js";import{p as O}from"./index-L60y6kc9.js";const ee={class:"card rounded-3 shadow-sm"},te={class:"mb-0 d-flex align-items-center gap-3"},se={class:"text-muted ms-auto d-block"},oe={key:0,class:"card-footer p-3 d-flex flex-column gap-2"},le=["onClick","id"],ne={class:"card-body d-flex p-3 gap-3 align-items-center"},ae={__name:"backupGroup",props:{configurationName:String,backups:Array,open:!1,selectedConfigurationBackup:Object,protocol:Array},emits:["select"],setup(m,{emit:u}){const t=m,h=u,p=k(t.open);return A(()=>{t.selectedConfigurationBackup&&document.querySelector(`#${t.selectedConfigurationBackup.filename.replace(".conf","")}`).scrollIntoView({behavior:"smooth"})}),(x,a)=>(n(),r("div",ee,[e("a",{role:"button",class:"card-body d-flex align-items-center text-decoration-none d-flex gap-3",onClick:a[0]||(a[0]=c=>p.value=!p.value)},[e("h6",te,[e("samp",null,y(m.configurationName),1),(n(!0),r(N,null,D(m.protocol,c=>(n(),f(q,{protocol:c},null,8,["protocol"]))),256))]),e("small",se,[l(o,{t:m.backups.length+(m.backups.length>1?" Backups":" Backup")},null,8,["t"])]),e("h5",{class:v(["mb-0 dropdownIcon text-muted",{active:p.value}])},a[1]||(a[1]=[e("i",{class:"bi bi-chevron-down"},null,-1)]),2)]),p.value?(n(),r("div",oe,[(n(!0),r(N,null,D(m.backups,c=>(n(),r("div",{class:"card rounded-3 shadow-sm animate__animated",key:c.filename,onClick:()=>{h("select",c)},id:c.filename.replace(".conf",""),role:"button"},[e("div",ne,[e("small",null,[a[2]||(a[2]=e("i",{class:"bi bi-file-earmark me-2"},null,-1)),e("samp",null,y(c.filename),1)]),e("small",null,[a[3]||(a[3]=e("i",{class:"bi bi-clock-history me-2"},null,-1)),e("samp",null,y(W(X)(c.backupDate).format("YYYY-MM-DD HH:mm:ss")),1)]),e("small",null,[a[4]||(a[4]=e("i",{class:"bi bi-database me-2"},null,-1)),c.database?(n(),f(o,{key:0,t:"Yes"})):(n(),f(o,{key:1,t:"No"}))]),a[5]||(a[5]=e("small",{class:"text-muted ms-auto"},[e("i",{class:"bi bi-chevron-right"})],-1))])],8,le))),128))])):w("",!0)]))}},ie=E(ae,[["__scopeId","data-v-ccf48ac7"]]),re={class:"d-flex flex-column gap-5",id:"confirmBackup"},de={class:"d-flex flex-column gap-3"},ue={class:"d-flex flex-column flex-sm-row align-items-start align-items-sm-center gap-3"},ce={class:"mb-0"},me={class:"text-muted mb-1"},fe={class:"mb-0"},pe={class:"text-muted mb-1",for:"ConfigurationName"},ve={class:"invalid-feedback"},be={key:0},ge={key:1},_e={class:"mb-0"},ke={class:"row g-3"},ye={class:"col-sm"},he={class:"text-muted mb-1",for:"PrivateKey"},xe={class:"input-group"},Ce={class:"col-sm"},Pe={class:"text-muted mb-1",for:"PublicKey"},we={class:"text-muted mb-1",for:"ListenPort"},$e={class:"invalid-feedback"},Be={key:0},Ne={key:1},De={class:"mb-0"},Ae={class:"text-muted mb-1 d-flex",for:"ListenPort"},Ie={class:"invalid-feedback"},Le={key:0},Se={key:1},Ue={class:"accordion",id:"newConfigurationOptionalAccordion"},Ke={class:"accordion-item"},Re={class:"accordion-header"},Ve={class:"accordion-button collapsed rounded-3",type:"button","data-bs-toggle":"collapse","data-bs-target":"#newConfigurationOptionalAccordionCollapse"},Oe={id:"newConfigurationOptionalAccordionCollapse",class:"accordion-collapse collapse","data-bs-parent":"#newConfigurationOptionalAccordion"},Ee={class:"accordion-body d-flex flex-column gap-3"},Te={class:"text-muted mb-1",for:"PreUp"},qe={class:"text-muted mb-1",for:"PreDown"},je={class:"text-muted mb-1",for:"PostUp"},Me={class:"text-muted mb-1",for:"PostDown"},Ye={class:"d-flex flex-column gap-3"},We={class:"d-flex flex-column flex-sm-row align-items-start align-items-sm-center gap-3"},Fe={class:"mb-0"},Ge={key:0},ze={class:"row g-3"},He={class:"col-sm"},Ze={class:"card text-bg-success rounded-3"},Je={class:"card-body"},Qe={class:"col-sm"},Xe={class:"card text-bg-warning rounded-3"},et={class:"card-body"},tt={class:"d-flex"},st=["disabled"],ot={__name:"confirmBackup",props:{selectedConfigurationBackup:Object},setup(m){const u=m,t=F({ConfigurationName:u.selectedConfigurationBackup.filename.split("_")[0],Backup:u.selectedConfigurationBackup.filename,Protocol:u.selectedConfigurationBackup.protocol}),h=u.selectedConfigurationBackup.content.split(` `);for(let i of h){if(i==="[Peer]")break;if(i.length>0){let s=i.replace(" = ","=").split("=");s[0]==="ListenPort"?t[s[0]]=parseInt(s[1]):t[s[0]]=s[1]}}const p=k(!1),x=k(!1),a=k(""),c=G(),b=C(()=>/^[a-zA-Z0-9_=+.-]{1,15}$/.test(t.ConfigurationName)&&t.ConfigurationName.length>0&&!c.Configurations.find(i=>i.Name===t.ConfigurationName)),P=C(()=>{try{window.wireguard.generatePublicKey(t.PrivateKey)}catch{return!1}return!0}),I=C(()=>t.ListenPort>0&&t.ListenPort<=65353&&Number.isInteger(t.ListenPort)&&!c.Configurations.find(i=>parseInt(i.ListenPort)===t.ListenPort)),L=C(()=>{try{return O(t.Address),!0}catch{return!1}}),S=C(()=>L.value&&I.value&&P.value&&b.value);A(()=>{document.querySelector("main").scrollTo({top:0,behavior:"smooth"}),z(()=>P,i=>{i&&(t.PublicKey=window.wireguard.generatePublicKey(t.PrivateKey))},{immediate:!0})});const U=C(()=>{let i;try{i=O(t.Address)}catch{return 0}return i.end-i.start}),K=C(()=>u.selectedConfigurationBackup.database?u.selectedConfigurationBackup.databaseContent.split(` `).filter(s=>s.search(`INSERT INTO "${t.ConfigurationName}"`)>=0).length:0),R=C(()=>u.selectedConfigurationBackup.database?u.selectedConfigurationBackup.databaseContent.split(` `).filter(s=>s.search(`INSERT INTO "${t.ConfigurationName}_restrict_access"`)>=0).length:0),j=T(),M=H(),Y=async()=>{S.value&&(x.value=!0,await Z("/api/addWireguardConfiguration",t,async i=>{i.status?(j.newMessage("Server","Configuration restored","success"),await c.getConfigurations(),await M.push(`/configuration/${t.ConfigurationName}/peers`)):x.value=!1}))};return(i,s)=>(n(),r("div",re,[e("form",de,[e("div",ue,[e("h4",ce,[l(o,{t:"Configuration"})])]),e("div",null,[e("label",me,[e("small",null,[l(o,{t:"Protocol"})])]),e("h5",fe,[l(q,{protocol:m.selectedConfigurationBackup.protocol,mini:!0},null,8,["protocol"])])]),e("div",null,[e("label",pe,[e("small",null,[l(o,{t:"Configuration Name"})])]),g(e("input",{type:"text",class:v(["form-control rounded-3",[b.value?"is-valid":"is-invalid"]]),placeholder:"ex. wg1",id:"ConfigurationName","onUpdate:modelValue":s[0]||(s[0]=d=>t.ConfigurationName=d),disabled:"",required:""},null,2),[[_,t.ConfigurationName]]),e("div",ve,[p.value?(n(),r("div",be,y(a.value),1)):(n(),r("div",ge,[l(o,{t:"Configuration name is invalid. Possible reasons:"}),e("ul",_e,[e("li",null,[l(o,{t:"Configuration name already exist."})]),e("li",null,[l(o,{t:"Configuration name can only contain 15 lower/uppercase alphabet, numbers, underscore, equal sign, plus sign, period and hyphen."})])])]))])]),e("div",ke,[e("div",ye,[e("div",null,[e("label",he,[e("small",null,[l(o,{t:"Private Key"})])]),e("div",xe,[g(e("input",{type:"text",class:v(["form-control rounded-start-3",[P.value?"is-valid":"is-invalid"]]),id:"PrivateKey",required:"","onUpdate:modelValue":s[1]||(s[1]=d=>t.PrivateKey=d),disabled:""},null,2),[[_,t.PrivateKey]])])])]),e("div",Ce,[e("div",null,[e("label",Pe,[e("small",null,[l(o,{t:"Public Key"})])]),g(e("input",{type:"text",class:"form-control rounded-3",id:"PublicKey","onUpdate:modelValue":s[2]||(s[2]=d=>t.PublicKey=d),disabled:""},null,512),[[_,t.PublicKey]])])])]),e("div",null,[e("label",we,[e("small",null,[l(o,{t:"Listen Port"})])]),g(e("input",{type:"number",class:v(["form-control rounded-3",[I.value?"is-valid":"is-invalid"]]),placeholder:"0-65353",id:"ListenPort",min:"1",max:"65353","onUpdate:modelValue":s[3]||(s[3]=d=>t.ListenPort=d),disabled:"",required:""},null,2),[[_,t.ListenPort]]),e("div",$e,[p.value?(n(),r("div",Be,y(a.value),1)):(n(),r("div",Ne,[l(o,{t:"Listen Port is invalid. Possible reasons:"}),e("ul",De,[e("li",null,[l(o,{t:"Invalid port."})]),e("li",null,[l(o,{t:"Port is assigned to existing WireGuard Configuration."})])])]))])]),e("div",null,[e("label",Ae,[e("small",null,[l(o,{t:"IP Address/CIDR"})]),e("small",{class:v(["ms-auto",[U.value>0?"text-success":"text-danger"]])},[l(o,{t:U.value+" Available IP Address"},null,8,["t"])],2)]),g(e("input",{type:"text",class:v(["form-control",[L.value?"is-valid":"is-invalid"]]),placeholder:"Ex: 10.0.0.1/24",id:"Address","onUpdate:modelValue":s[4]||(s[4]=d=>t.Address=d),disabled:"",required:""},null,2),[[_,t.Address]]),e("div",Ie,[p.value?(n(),r("div",Le,y(a.value),1)):(n(),r("div",Se,[l(o,{t:"IP Address/CIDR is invalid"})]))])]),e("div",Ue,[e("div",Ke,[e("h2",Re,[e("button",Ve,[l(o,{t:"Optional Settings"})])]),e("div",Oe,[e("div",Ee,[e("div",null,[e("label",Te,[e("small",null,[l(o,{t:"PreUp"})])]),g(e("input",{type:"text",class:"form-control rounded-3",id:"PreUp",disabled:"","onUpdate:modelValue":s[5]||(s[5]=d=>t.PreUp=d)},null,512),[[_,t.PreUp]])]),e("div",null,[e("label",qe,[e("small",null,[l(o,{t:"PreDown"})])]),g(e("input",{type:"text",class:"form-control rounded-3",id:"PreDown",disabled:"","onUpdate:modelValue":s[6]||(s[6]=d=>t.PreDown=d)},null,512),[[_,t.PreDown]])]),e("div",null,[e("label",je,[e("small",null,[l(o,{t:"PostUp"})])]),g(e("input",{type:"text",class:"form-control rounded-3",id:"PostUp",disabled:"","onUpdate:modelValue":s[7]||(s[7]=d=>t.PostUp=d)},null,512),[[_,t.PostUp]])]),e("div",null,[e("label",Me,[e("small",null,[l(o,{t:"PostDown"})])]),g(e("input",{type:"text",class:"form-control rounded-3",id:"PostDown",disabled:"","onUpdate:modelValue":s[8]||(s[8]=d=>t.PostDown=d)},null,512),[[_,t.PostDown]])])])])])])]),e("div",Ye,[e("div",We,[e("h4",Fe,[l(o,{t:"Database File"})]),e("h4",{class:v(["mb-0 ms-auto",[m.selectedConfigurationBackup.database?"text-success":"text-danger"]])},[e("i",{class:v(["bi",[m.selectedConfigurationBackup.database?"bi-check-circle-fill":"bi-x-circle-fill"]])},null,2)],2)]),m.selectedConfigurationBackup.database?(n(),r("div",Ge,[e("div",ze,[e("div",He,[e("div",Ze,[e("div",Je,[s[10]||(s[10]=e("i",{class:"bi bi-person-fill me-2"},null,-1)),l(o,{t:"Contain"}),s[11]||(s[11]=$()),e("strong",null,y(K.value),1),s[12]||(s[12]=$()),K.value>1?(n(),f(o,{key:0,t:"Peer"})):(n(),f(o,{key:1,t:"Peer"}))])])]),e("div",Qe,[e("div",Xe,[e("div",et,[s[13]||(s[13]=e("i",{class:"bi bi-person-fill-lock me-2"},null,-1)),l(o,{t:"Contain"}),s[14]||(s[14]=$()),e("strong",null,y(R.value),1),s[15]||(s[15]=$()),R.value>1?(n(),f(o,{key:0,t:"Restricted Peers"})):(n(),f(o,{key:1,t:"Restricted Peers"}))])])])])])):w("",!0)]),e("div",tt,[e("button",{class:"btn btn-dark btn-brand rounded-3 px-3 py-2 shadow ms-auto",disabled:!S.value||x.value,onClick:s[9]||(s[9]=d=>Y())},[s[16]||(s[16]=e("i",{class:"bi bi-clock-history me-2"},null,-1)),l(o,{t:x.value?"Restoring...":"Restore"},null,8,["t"])],8,st)])]))}},lt={class:"mt-md-5 mt-3 text-body"},nt={class:"container mb-4"},at={class:"mb-5 d-flex align-items-center gap-4"},it={class:"mb-0"},rt={key:0},dt={class:"d-flex text-decoration-none text-body flex-grow-1 align-items-center gap-3"},ut={class:"mb-0"},ct={class:"text-muted"},mt={key:0,class:"ms-sm-auto"},ft={class:"text-muted"},pt={key:0,id:"step1Detail"},vt={class:"mb-4"},bt={class:"d-flex gap-3 flex-column"},gt={key:0},_t={class:"card rounded-3"},kt={class:"card-body"},yt={class:"mb-0"},ht={class:"my-5",key:"step2",id:"step2"},xt={class:"text-muted"},Ct={__name:"restoreConfiguration",setup(m){const u=k(void 0);T(),k(!1),A(()=>{J("/api/getAllWireguardConfigurationBackup",{},x=>{u.value=x.data})});const t=k(!1),h=k(void 0),p=k("");return(x,a)=>{const c=Q("RouterLink");return n(),r("div",lt,[e("div",nt,[e("div",at,[l(c,{to:"/",class:"btn btn-dark btn-brand p-2 shadow",style:{"border-radius":"100%"}},{default:B(()=>a[1]||(a[1]=[e("h2",{class:"mb-0",style:{"line-height":"0"}},[e("i",{class:"bi bi-arrow-left-circle"})],-1)])),_:1}),e("h2",it,[l(o,{t:"Restore Configuration"})])]),l(V,{name:"fade",appear:""},{default:B(()=>[u.value?(n(),r("div",rt,[e("div",{class:v(["d-flex mb-5 align-items-center steps",{active:!t.value}]),role:"button",onClick:a[0]||(a[0]=b=>t.value=!1),key:"step1"},[e("div",dt,[a[2]||(a[2]=e("h1",{class:"mb-0",style:{"line-height":"0"}},[e("i",{class:"bi bi-1-circle-fill"})],-1)),e("div",null,[e("h4",ut,[l(o,{t:"Step 1"})]),e("small",ct,[t.value?(n(),f(o,{key:1,t:"Click to change a backup"})):(n(),f(o,{key:0,t:"Select a backup you want to restore"}))])])]),l(V,{name:"zoomReversed"},{default:B(()=>[t.value?(n(),r("div",mt,[e("small",ft,[l(o,{t:"Selected Backup"})]),e("h6",null,[e("samp",null,y(h.value.filename),1)])])):w("",!0)]),_:1})],2),t.value?w("",!0):(n(),r("div",pt,[e("div",vt,[e("div",bt,[(n(!0),r(N,null,D(Object.keys(u.value.NonExistingConfigurations),b=>(n(),f(ie,{onSelect:P=>{h.value=P,p.value=b,t.value=!0},selectedConfigurationBackup:h.value,open:p.value===b,protocol:[...new Set(u.value.NonExistingConfigurations[b].map(P=>P.protocol))],"configuration-name":b,backups:u.value.NonExistingConfigurations[b]},null,8,["onSelect","selectedConfigurationBackup","open","protocol","configuration-name","backups"]))),256)),Object.keys(u.value.NonExistingConfigurations).length===0?(n(),r("div",gt,[e("div",_t,[e("div",kt,[e("p",yt,[l(o,{t:"You don't have any configuration to restore"})])])])])):w("",!0)])])])),e("div",ht,[e("div",{class:v(["steps d-flex text-decoration-none text-body flex-grow-1 align-items-center gap-3",{active:t.value}])},[a[4]||(a[4]=e("h1",{class:"mb-0",style:{"line-height":"0"}},[e("i",{class:"bi bi-2-circle-fill"})],-1)),e("div",null,[a[3]||(a[3]=e("h4",{class:"mb-0"},"Step 2",-1)),e("small",xt,[t.value?(n(),f(o,{key:1,t:"Confirm & edit restore information"})):(n(),f(o,{key:0,t:"Backup not selected"}))])])],2)]),t.value?(n(),f(ot,{selectedConfigurationBackup:h.value,key:"confirm"},null,8,["selectedConfigurationBackup"])):w("",!0)])):w("",!0)]),_:1})])])}}},Dt=E(Ct,[["__scopeId","data-v-324df2b1"]]);export{Dt as default}; diff --git a/src/static/app/dist/assets/schedulePeerJob-DtVhPy4n.js b/src/static/app/dist/assets/schedulePeerJob-Cy0v4heL.js similarity index 96% rename from src/static/app/dist/assets/schedulePeerJob-DtVhPy4n.js rename to src/static/app/dist/assets/schedulePeerJob-Cy0v4heL.js index c51165b..09e7a75 100644 --- a/src/static/app/dist/assets/schedulePeerJob-DtVhPy4n.js +++ b/src/static/app/dist/assets/schedulePeerJob-Cy0v4heL.js @@ -1 +1 @@ -import{_,a as d,c as r,b as s,t as m,n as y,F as j,h as S,e as f,r as h,D as k,A as v,k as b,d as n,i as x,m as D,y as $,f as p}from"./index-CfPziasH.js";import{V as J}from"./vue-datepicker-BZlVex04.js";import{d as V}from"./dayjs.min-C4BEB1lt.js";import{L as C}from"./localeText-CyxQ0Kz3.js";const O={name:"scheduleDropdown",props:{options:Array,data:String,edit:!1},setup(t){t.data===void 0&&this.$emit("update",this.options[0].value)},computed:{currentSelection(){return this.options.find(t=>t.value===this.data)}}},M={class:"dropdown scheduleDropdown"},N={class:"dropdown-menu rounded-3 shadow",style:{"font-size":"0.875rem",width:"200px"}},P=["onClick"],A={key:0,class:"bi bi-check ms-auto"};function F(t,e,l,o,c,w){return d(),r("div",M,[s("button",{class:y(["btn btn-sm btn-outline-primary rounded-3",{"disabled border-transparent":!l.edit}]),type:"button","data-bs-toggle":"dropdown","aria-expanded":"false"},[s("samp",null,m(this.currentSelection.display),1)],2),s("ul",N,[l.edit?(d(!0),r(j,{key:0},S(this.options,a=>(d(),r("li",null,[s("a",{class:"dropdown-item d-flex align-items-center",role:"button",onClick:u=>t.$emit("update",a.value)},[s("samp",null,m(a.display),1),a.value===this.currentSelection.value?(d(),r("i",A)):f("",!0)],8,P)]))),256)):f("",!0)])])}const L=_(O,[["render",F],["__scopeId","data-v-6a5aba2a"]]),T={name:"schedulePeerJob",components:{LocaleText:C,VueDatePicker:J,ScheduleDropdown:L},props:{dropdowns:Array[Object],pjob:Object,viewOnly:!1},setup(t){const e=h({}),l=h(!1),o=h(!1);e.value=JSON.parse(JSON.stringify(t.pjob)),e.value.CreationDate||(l.value=!0,o.value=!0);const c=k();return{job:e,edit:l,newJob:o,store:c}},data(){return{inputType:void 0}},watch:{pjob:{deep:!0,immediate:!0,handler(t){this.edit||(this.job=JSON.parse(JSON.stringify(t)))}}},methods:{save(){this.job.Field&&this.job.Operator&&this.job.Action&&this.job.Value?v("/api/savePeerScheduleJob",{Job:this.job},t=>{t.status?(this.edit=!1,this.store.newMessage("Server","Peer job saved","success"),console.log(t.data),this.$emit("refresh",t.data[0]),this.newJob=!1):this.store.newMessage("Server",t.message,"danger")}):this.alert()},alert(){let t="animate__flash",e=this.$el.querySelectorAll(".scheduleDropdown"),l=this.$el.querySelectorAll("input");e.forEach(o=>o.classList.add("animate__animated",t)),l.forEach(o=>o.classList.add("animate__animated",t)),setTimeout(()=>{e.forEach(o=>o.classList.remove("animate__animated",t)),l.forEach(o=>o.classList.remove("animate__animated",t))},2e3)},reset(){this.job.CreationDate?(this.job=JSON.parse(JSON.stringify(this.pjob)),this.edit=!1):this.$emit("delete")},delete(){this.job.CreationDate&&v("/api/deletePeerScheduleJob",{Job:this.job},t=>{t.status?this.store.newMessage("Server","Peer job deleted","success"):(this.store.newMessage("Server",t.message,"danger"),this.$emit("delete"))}),this.$emit("delete")},parseTime(t){t&&(this.job.Value=V(t).format("YYYY-MM-DD HH:mm:ss"))}}},E={class:"card-header bg-transparent text-muted border-0"},U={key:0,class:"d-flex"},H={class:"me-auto"},B={key:1},I={class:"badge text-bg-warning"},Y={class:"card-body pt-1",style:{"font-family":"var(--bs-font-monospace)"}},q={class:"d-flex gap-2 align-items-center mb-2"},z=["disabled"],G={class:"px-5 d-flex gap-2 align-items-center"},K={class:"d-flex gap-3"},Q={key:0,class:"ms-auto d-flex gap-3"},R={key:1,class:"ms-auto d-flex gap-3"};function W(t,e,l,o,c,w){const a=b("LocaleText"),u=b("ScheduleDropdown"),g=b("VueDatePicker");return d(),r("div",{class:y(["card shadow-sm rounded-3 mb-2",{"border-warning-subtle":this.newJob}])},[s("div",E,[this.newJob?(d(),r("small",B,[s("span",I,[n(a,{t:"Unsaved Job"})])])):(d(),r("small",U,[s("strong",H,[n(a,{t:"Job ID"})]),s("samp",null,m(this.job.JobID),1)]))]),s("div",Y,[s("div",q,[s("samp",null,[n(a,{t:"if"})]),n(u,{edit:o.edit,options:this.dropdowns.Field,data:this.job.Field,onUpdate:e[0]||(e[0]=i=>{this.job.Field=i})},null,8,["edit","options","data"]),s("samp",null,[n(a,{t:"is"})]),n(u,{edit:o.edit,options:this.dropdowns.Operator,data:this.job.Operator,onUpdate:e[1]||(e[1]=i=>this.job.Operator=i)},null,8,["edit","options","data"]),this.job.Field==="date"?(d(),x(g,{key:0,is24:!0,"min-date":new Date,"model-value":this.job.Value,"onUpdate:modelValue":this.parseTime,"time-picker-inline":"",format:"yyyy-MM-dd HH:mm:ss","preview-format":"yyyy-MM-dd HH:mm:ss",clearable:!1,disabled:!o.edit,dark:this.store.Configuration.Server.dashboard_theme==="dark"},null,8,["min-date","model-value","onUpdate:modelValue","disabled","dark"])):D((d(),r("input",{key:1,class:"form-control form-control-sm form-control-dark rounded-3 flex-grow-1",disabled:!o.edit,"onUpdate:modelValue":e[2]||(e[2]=i=>this.job.Value=i),style:{width:"auto"}},null,8,z)),[[$,this.job.Value]]),s("samp",null,m(this.dropdowns.Field.find(i=>i.value===this.job.Field)?.unit)+" { ",1)]),s("div",G,[s("samp",null,[n(a,{t:"then"})]),n(u,{edit:o.edit,options:this.dropdowns.Action,data:this.job.Action,onUpdate:e[3]||(e[3]=i=>this.job.Action=i)},null,8,["edit","options","data"])]),s("div",K,[e[12]||(e[12]=s("samp",null,"}",-1)),this.edit?(d(),r("div",R,[s("a",{role:"button",class:"text-secondary text-decoration-none",onClick:e[6]||(e[6]=i=>this.reset())},[e[10]||(e[10]=p("[C] ")),n(a,{t:"Cancel"})]),s("a",{role:"button",class:"text-primary ms-auto text-decoration-none",onClick:e[7]||(e[7]=i=>this.save())},[e[11]||(e[11]=p("[S] ")),n(a,{t:"Save"})])])):(d(),r("div",Q,[s("a",{role:"button",class:"ms-auto text-decoration-none",onClick:e[4]||(e[4]=i=>this.edit=!0)},[e[8]||(e[8]=p("[E] ")),n(a,{t:"Edit"})]),s("a",{role:"button",onClick:e[5]||(e[5]=i=>this.delete()),class:"text-danger text-decoration-none"},[e[9]||(e[9]=p("[D] ")),n(a,{t:"Delete"})])]))])])],2)}const se=_(T,[["render",W],["__scopeId","data-v-4aa63a3e"]]);export{se as S,L as a}; +import{_,a as d,c as r,b as s,t as m,n as y,F as j,h as S,e as f,r as h,D as k,A as v,k as b,d as n,i as x,m as D,y as $,f as p}from"./index-AzYVPyhh.js";import{V as J}from"./vue-datepicker-Co-zpMN6.js";import{d as V}from"./dayjs.min-DO3nadR-.js";import{L as C}from"./localeText-qJNpKS91.js";const O={name:"scheduleDropdown",props:{options:Array,data:String,edit:!1},setup(t){t.data===void 0&&this.$emit("update",this.options[0].value)},computed:{currentSelection(){return this.options.find(t=>t.value===this.data)}}},M={class:"dropdown scheduleDropdown"},N={class:"dropdown-menu rounded-3 shadow",style:{"font-size":"0.875rem",width:"200px"}},P=["onClick"],A={key:0,class:"bi bi-check ms-auto"};function F(t,e,l,o,c,w){return d(),r("div",M,[s("button",{class:y(["btn btn-sm btn-outline-primary rounded-3",{"disabled border-transparent":!l.edit}]),type:"button","data-bs-toggle":"dropdown","aria-expanded":"false"},[s("samp",null,m(this.currentSelection.display),1)],2),s("ul",N,[l.edit?(d(!0),r(j,{key:0},S(this.options,a=>(d(),r("li",null,[s("a",{class:"dropdown-item d-flex align-items-center",role:"button",onClick:u=>t.$emit("update",a.value)},[s("samp",null,m(a.display),1),a.value===this.currentSelection.value?(d(),r("i",A)):f("",!0)],8,P)]))),256)):f("",!0)])])}const L=_(O,[["render",F],["__scopeId","data-v-6a5aba2a"]]),T={name:"schedulePeerJob",components:{LocaleText:C,VueDatePicker:J,ScheduleDropdown:L},props:{dropdowns:Array[Object],pjob:Object,viewOnly:!1},setup(t){const e=h({}),l=h(!1),o=h(!1);e.value=JSON.parse(JSON.stringify(t.pjob)),e.value.CreationDate||(l.value=!0,o.value=!0);const c=k();return{job:e,edit:l,newJob:o,store:c}},data(){return{inputType:void 0}},watch:{pjob:{deep:!0,immediate:!0,handler(t){this.edit||(this.job=JSON.parse(JSON.stringify(t)))}}},methods:{save(){this.job.Field&&this.job.Operator&&this.job.Action&&this.job.Value?v("/api/savePeerScheduleJob",{Job:this.job},t=>{t.status?(this.edit=!1,this.store.newMessage("Server","Peer job saved","success"),console.log(t.data),this.$emit("refresh",t.data[0]),this.newJob=!1):this.store.newMessage("Server",t.message,"danger")}):this.alert()},alert(){let t="animate__flash",e=this.$el.querySelectorAll(".scheduleDropdown"),l=this.$el.querySelectorAll("input");e.forEach(o=>o.classList.add("animate__animated",t)),l.forEach(o=>o.classList.add("animate__animated",t)),setTimeout(()=>{e.forEach(o=>o.classList.remove("animate__animated",t)),l.forEach(o=>o.classList.remove("animate__animated",t))},2e3)},reset(){this.job.CreationDate?(this.job=JSON.parse(JSON.stringify(this.pjob)),this.edit=!1):this.$emit("delete")},delete(){this.job.CreationDate&&v("/api/deletePeerScheduleJob",{Job:this.job},t=>{t.status?this.store.newMessage("Server","Peer job deleted","success"):(this.store.newMessage("Server",t.message,"danger"),this.$emit("delete"))}),this.$emit("delete")},parseTime(t){t&&(this.job.Value=V(t).format("YYYY-MM-DD HH:mm:ss"))}}},E={class:"card-header bg-transparent text-muted border-0"},U={key:0,class:"d-flex"},H={class:"me-auto"},B={key:1},I={class:"badge text-bg-warning"},Y={class:"card-body pt-1",style:{"font-family":"var(--bs-font-monospace)"}},q={class:"d-flex gap-2 align-items-center mb-2"},z=["disabled"],G={class:"px-5 d-flex gap-2 align-items-center"},K={class:"d-flex gap-3"},Q={key:0,class:"ms-auto d-flex gap-3"},R={key:1,class:"ms-auto d-flex gap-3"};function W(t,e,l,o,c,w){const a=b("LocaleText"),u=b("ScheduleDropdown"),g=b("VueDatePicker");return d(),r("div",{class:y(["card shadow-sm rounded-3 mb-2",{"border-warning-subtle":this.newJob}])},[s("div",E,[this.newJob?(d(),r("small",B,[s("span",I,[n(a,{t:"Unsaved Job"})])])):(d(),r("small",U,[s("strong",H,[n(a,{t:"Job ID"})]),s("samp",null,m(this.job.JobID),1)]))]),s("div",Y,[s("div",q,[s("samp",null,[n(a,{t:"if"})]),n(u,{edit:o.edit,options:this.dropdowns.Field,data:this.job.Field,onUpdate:e[0]||(e[0]=i=>{this.job.Field=i})},null,8,["edit","options","data"]),s("samp",null,[n(a,{t:"is"})]),n(u,{edit:o.edit,options:this.dropdowns.Operator,data:this.job.Operator,onUpdate:e[1]||(e[1]=i=>this.job.Operator=i)},null,8,["edit","options","data"]),this.job.Field==="date"?(d(),x(g,{key:0,is24:!0,"min-date":new Date,"model-value":this.job.Value,"onUpdate:modelValue":this.parseTime,"time-picker-inline":"",format:"yyyy-MM-dd HH:mm:ss","preview-format":"yyyy-MM-dd HH:mm:ss",clearable:!1,disabled:!o.edit,dark:this.store.Configuration.Server.dashboard_theme==="dark"},null,8,["min-date","model-value","onUpdate:modelValue","disabled","dark"])):D((d(),r("input",{key:1,class:"form-control form-control-sm form-control-dark rounded-3 flex-grow-1",disabled:!o.edit,"onUpdate:modelValue":e[2]||(e[2]=i=>this.job.Value=i),style:{width:"auto"}},null,8,z)),[[$,this.job.Value]]),s("samp",null,m(this.dropdowns.Field.find(i=>i.value===this.job.Field)?.unit)+" { ",1)]),s("div",G,[s("samp",null,[n(a,{t:"then"})]),n(u,{edit:o.edit,options:this.dropdowns.Action,data:this.job.Action,onUpdate:e[3]||(e[3]=i=>this.job.Action=i)},null,8,["edit","options","data"])]),s("div",K,[e[12]||(e[12]=s("samp",null,"}",-1)),this.edit?(d(),r("div",R,[s("a",{role:"button",class:"text-secondary text-decoration-none",onClick:e[6]||(e[6]=i=>this.reset())},[e[10]||(e[10]=p("[C] ")),n(a,{t:"Cancel"})]),s("a",{role:"button",class:"text-primary ms-auto text-decoration-none",onClick:e[7]||(e[7]=i=>this.save())},[e[11]||(e[11]=p("[S] ")),n(a,{t:"Save"})])])):(d(),r("div",Q,[s("a",{role:"button",class:"ms-auto text-decoration-none",onClick:e[4]||(e[4]=i=>this.edit=!0)},[e[8]||(e[8]=p("[E] ")),n(a,{t:"Edit"})]),s("a",{role:"button",onClick:e[5]||(e[5]=i=>this.delete()),class:"text-danger text-decoration-none"},[e[9]||(e[9]=p("[D] ")),n(a,{t:"Delete"})])]))])])],2)}const se=_(T,[["render",W],["__scopeId","data-v-4aa63a3e"]]);export{se as S,L as a}; diff --git a/src/static/app/dist/assets/selectPeers-Bs51pfmN.js b/src/static/app/dist/assets/selectPeers-C_td7K2S.js similarity index 97% rename from src/static/app/dist/assets/selectPeers-Bs51pfmN.js rename to src/static/app/dist/assets/selectPeers-C_td7K2S.js index 006334f..300aac7 100644 --- a/src/static/app/dist/assets/selectPeers-Bs51pfmN.js +++ b/src/static/app/dist/assets/selectPeers-C_td7K2S.js @@ -1 +1 @@ -import{_ as I,r as g,q as R,H as j,J as F,D as M,E as O,a2 as C,a as o,c as n,b as t,d as r,e as b,m as q,y as z,F as p,h as G,n as w,t as S,f as h,A as H,g as J}from"./index-CfPziasH.js";import{L as d}from"./localeText-CyxQ0Kz3.js";const Y={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll",ref:"selectPeersContainer"},K={class:"container d-flex h-100 w-100"},Q={class:"m-auto modal-dialog-centered dashboardModal",style:{width:"700px"}},W={class:"card rounded-3 shadow flex-grow-1"},X={class:"card-header bg-transparent d-flex align-items-center gap-2 p-4 flex-column pb-3"},Z={class:"mb-2 w-100 d-flex"},ee={class:"mb-0"},te={class:"d-flex w-100 align-items-center gap-2"},se={class:"d-flex gap-3"},le={class:"card-body px-4 flex-grow-1 d-flex gap-2 flex-column position-relative",ref:"card-body",style:{"overflow-y":"scroll"}},ae=["onClick","disabled","data-id"],oe={key:0},ne={class:"d-flex flex-column"},ie={class:"fw-bold"},re={class:"text-muted"},de={key:1,class:"ms-auto"},ue={key:0,class:"spinner-border spinner-border-sm",role:"status"},ce={class:"card-footer px-4 py-3 gap-2 d-flex align-items-center"},fe=["disabled"],be={key:0,class:"flex-grow-1 text-center"},ve=["disabled"],me={key:0,class:"flex-grow-1 text-center"},ge=["disabled"],pe={key:0,class:"flex-grow-1 text-center"},he=["disabled"],xe={__name:"selectPeers",props:{configurationPeers:Array},emits:["refresh","close"],setup(x,{emit:$}){const y=x,f=g(!1),u=g(!1),s=g([]),m=g(""),D=a=>{s.value.find(e=>e===a)?s.value=s.value.filter(e=>e!==a):s.value.push(a)},B=R(()=>f.value||u.value?y.configurationPeers.filter(a=>s.value.find(e=>e===a.id)):m.value.length>0?y.configurationPeers.filter(a=>a.id.includes(m.value)||a.name.includes(m.value)):y.configurationPeers);j(s,()=>{s.value.length===0&&(f.value=!1,u.value=!1)});const P=F(),N=M(),_=$,v=g(!1),T=()=>{v.value=!0,H(`/api/deletePeers/${P.params.id}`,{peers:s.value},a=>{N.newMessage("Server",a.message,a.status?"success":"danger"),a.status&&(s.value=[],f.value=!1),_("refresh"),v.value=!1})},c=O({success:[],failed:[]}),L=C("card-body"),U=C("sp"),V=async()=>{u.value=!0;for(const a of s.value)L.value.scrollTo({top:U.value.find(e=>e.dataset.id===a).offsetTop-20,behavior:"smooth"}),await J("/api/downloadPeer/"+P.params.id,{id:a},e=>{if(e.status){const l=new Blob([e.data.file],{type:"text/plain"}),i=URL.createObjectURL(l),E=`${e.data.fileName}.conf`,k=document.createElement("a");k.href=i,k.download=E,k.click(),c.success.push(a)}else c.failed.push(a)})},A=()=>{c.success=[],c.failed=[],u.value=!1};return(a,e)=>(o(),n("div",Y,[t("div",K,[t("div",Q,[t("div",W,[t("div",X,[t("div",Z,[t("h4",ee,[r(d,{t:"Select Peers"})]),t("button",{type:"button",class:"btn-close ms-auto",onClick:e[0]||(e[0]=l=>_("close"))})]),t("div",te,[t("div",se,[!u.value&&s.value.length!==x.configurationPeers.map(l=>l.id).length?(o(),n("a",{key:0,role:"button",onClick:e[1]||(e[1]=l=>s.value=x.configurationPeers.map(i=>i.id)),class:"text-decoration-none text-body"},[t("small",null,[e[9]||(e[9]=t("i",{class:"bi bi-check-all me-2"},null,-1)),r(d,{t:"Select All"})])])):b("",!0),s.value.length>0&&!u.value?(o(),n("a",{key:1,role:"button",class:"text-decoration-none text-body",onClick:e[2]||(e[2]=l=>s.value=[])},[t("small",null,[e[10]||(e[10]=t("i",{class:"bi bi-x-circle-fill me-2"},null,-1)),r(d,{t:"Clear Selection"})])])):b("",!0)]),e[11]||(e[11]=t("label",{class:"ms-auto",for:"selectPeersSearchInput"},[t("i",{class:"bi bi-search"})],-1)),q(t("input",{class:"form-control form-control-sm rounded-3","onUpdate:modelValue":e[3]||(e[3]=l=>m.value=l),id:"selectPeersSearchInput",style:{width:"200px !important"},type:"text"},null,512),[[z,m.value]])])]),t("div",le,[(o(!0),n(p,null,G(B.value,l=>(o(),n("button",{type:"button",class:w(["btn w-100 peerBtn text-start rounded-3 d-flex align-items-center gap-3",{active:s.value.find(i=>i===l.id)}]),onClick:i=>D(l.id),key:l.id,disabled:f.value||u.value,ref_for:!0,ref:"sp","data-id":l.id},[u.value?b("",!0):(o(),n("span",oe,[t("i",{class:w(["bi",[s.value.find(i=>i===l.id)?"bi-check-circle-fill":"bi-circle"]])},null,2)])),t("span",ne,[t("small",ie,S(l.name?l.name:"Untitled Peer"),1),t("small",re,[t("samp",null,S(l.id),1)])]),u.value?(o(),n("span",de,[!c.success.find(i=>i===l.id)&&!c.failed.find(i=>i===l.id)?(o(),n("span",ue)):(o(),n("i",{key:1,class:w(["bi",[c.failed.find(i=>i===l.id)?"bi-x-circle-fill":"bi-check-circle-fill"]])},null,2))])):b("",!0)],10,ae))),128))],512),t("div",ce,[!f.value&&!u.value?(o(),n(p,{key:0},[t("button",{class:"btn bg-primary-subtle text-primary-emphasis border-primary-subtle rounded-3",disabled:s.value.length===0||v.value,onClick:e[4]||(e[4]=l=>V())},e[12]||(e[12]=[t("i",{class:"bi bi-download"},null,-1)]),8,fe),s.value.length>0?(o(),n("span",be,[e[13]||(e[13]=t("i",{class:"bi bi-check-circle-fill me-2"},null,-1)),r(d,{t:s.value.length+" Peer"+(s.value.length>1?"s":"")},null,8,["t"])])):b("",!0),t("button",{class:"btn bg-danger-subtle text-danger-emphasis border-danger-subtle ms-auto rounded-3",onClick:e[5]||(e[5]=l=>f.value=!0),disabled:s.value.length===0||v.value},e[14]||(e[14]=[t("i",{class:"bi bi-trash"},null,-1)]),8,ve)],64)):u.value?(o(),n(p,{key:1},[c.failed.length+c.success.length1?"s":"")},null,8,["t"]),e[16]||(e[16]=h("... "))])):(o(),n(p,{key:1},[t("strong",null,[r(d,{t:"Download Finished"})]),t("button",{onClick:e[6]||(e[6]=l=>A()),class:"btn bg-secondary-subtle text-secondary-emphasis border border-secondary-subtle rounded-3 ms-auto"},[r(d,{t:"Done"})])],64))],64)):f.value?(o(),n(p,{key:2},[t("button",{class:"btn btn-danger rounded-3",disabled:s.value.length===0||v.value,onClick:e[7]||(e[7]=l=>T())},[r(d,{t:"Yes"})],8,ge),s.value.length>0?(o(),n("strong",pe,[r(d,{t:"Are you sure to delete"}),e[17]||(e[17]=h()),r(d,{t:s.value.length+" Peer"+(s.value.length>1?"s":"")},null,8,["t"]),e[18]||(e[18]=h("? "))])):b("",!0),t("button",{class:"btn bg-secondary-subtle text-secondary-emphasis border border-secondary-subtle ms-auto rounded-3",disabled:s.value.length===0||v.value,onClick:e[8]||(e[8]=l=>f.value=!1)},[r(d,{t:"No"})],8,he)],64)):b("",!0)])])])])],512))}},we=I(xe,[["__scopeId","data-v-177407c1"]]);export{we as default}; +import{_ as I,r as g,q as R,H as j,J as F,D as M,E as O,a2 as C,a as o,c as n,b as t,d as r,e as b,m as q,y as z,F as p,h as G,n as w,t as S,f as h,A as H,g as J}from"./index-AzYVPyhh.js";import{L as d}from"./localeText-qJNpKS91.js";const Y={class:"peerSettingContainer w-100 h-100 position-absolute top-0 start-0 overflow-y-scroll",ref:"selectPeersContainer"},K={class:"container d-flex h-100 w-100"},Q={class:"m-auto modal-dialog-centered dashboardModal",style:{width:"700px"}},W={class:"card rounded-3 shadow flex-grow-1"},X={class:"card-header bg-transparent d-flex align-items-center gap-2 p-4 flex-column pb-3"},Z={class:"mb-2 w-100 d-flex"},ee={class:"mb-0"},te={class:"d-flex w-100 align-items-center gap-2"},se={class:"d-flex gap-3"},le={class:"card-body px-4 flex-grow-1 d-flex gap-2 flex-column position-relative",ref:"card-body",style:{"overflow-y":"scroll"}},ae=["onClick","disabled","data-id"],oe={key:0},ne={class:"d-flex flex-column"},ie={class:"fw-bold"},re={class:"text-muted"},de={key:1,class:"ms-auto"},ue={key:0,class:"spinner-border spinner-border-sm",role:"status"},ce={class:"card-footer px-4 py-3 gap-2 d-flex align-items-center"},fe=["disabled"],be={key:0,class:"flex-grow-1 text-center"},ve=["disabled"],me={key:0,class:"flex-grow-1 text-center"},ge=["disabled"],pe={key:0,class:"flex-grow-1 text-center"},he=["disabled"],xe={__name:"selectPeers",props:{configurationPeers:Array},emits:["refresh","close"],setup(x,{emit:$}){const y=x,f=g(!1),u=g(!1),s=g([]),m=g(""),D=a=>{s.value.find(e=>e===a)?s.value=s.value.filter(e=>e!==a):s.value.push(a)},B=R(()=>f.value||u.value?y.configurationPeers.filter(a=>s.value.find(e=>e===a.id)):m.value.length>0?y.configurationPeers.filter(a=>a.id.includes(m.value)||a.name.includes(m.value)):y.configurationPeers);j(s,()=>{s.value.length===0&&(f.value=!1,u.value=!1)});const P=F(),N=M(),_=$,v=g(!1),T=()=>{v.value=!0,H(`/api/deletePeers/${P.params.id}`,{peers:s.value},a=>{N.newMessage("Server",a.message,a.status?"success":"danger"),a.status&&(s.value=[],f.value=!1),_("refresh"),v.value=!1})},c=O({success:[],failed:[]}),L=C("card-body"),U=C("sp"),V=async()=>{u.value=!0;for(const a of s.value)L.value.scrollTo({top:U.value.find(e=>e.dataset.id===a).offsetTop-20,behavior:"smooth"}),await J("/api/downloadPeer/"+P.params.id,{id:a},e=>{if(e.status){const l=new Blob([e.data.file],{type:"text/plain"}),i=URL.createObjectURL(l),E=`${e.data.fileName}.conf`,k=document.createElement("a");k.href=i,k.download=E,k.click(),c.success.push(a)}else c.failed.push(a)})},A=()=>{c.success=[],c.failed=[],u.value=!1};return(a,e)=>(o(),n("div",Y,[t("div",K,[t("div",Q,[t("div",W,[t("div",X,[t("div",Z,[t("h4",ee,[r(d,{t:"Select Peers"})]),t("button",{type:"button",class:"btn-close ms-auto",onClick:e[0]||(e[0]=l=>_("close"))})]),t("div",te,[t("div",se,[!u.value&&s.value.length!==x.configurationPeers.map(l=>l.id).length?(o(),n("a",{key:0,role:"button",onClick:e[1]||(e[1]=l=>s.value=x.configurationPeers.map(i=>i.id)),class:"text-decoration-none text-body"},[t("small",null,[e[9]||(e[9]=t("i",{class:"bi bi-check-all me-2"},null,-1)),r(d,{t:"Select All"})])])):b("",!0),s.value.length>0&&!u.value?(o(),n("a",{key:1,role:"button",class:"text-decoration-none text-body",onClick:e[2]||(e[2]=l=>s.value=[])},[t("small",null,[e[10]||(e[10]=t("i",{class:"bi bi-x-circle-fill me-2"},null,-1)),r(d,{t:"Clear Selection"})])])):b("",!0)]),e[11]||(e[11]=t("label",{class:"ms-auto",for:"selectPeersSearchInput"},[t("i",{class:"bi bi-search"})],-1)),q(t("input",{class:"form-control form-control-sm rounded-3","onUpdate:modelValue":e[3]||(e[3]=l=>m.value=l),id:"selectPeersSearchInput",style:{width:"200px !important"},type:"text"},null,512),[[z,m.value]])])]),t("div",le,[(o(!0),n(p,null,G(B.value,l=>(o(),n("button",{type:"button",class:w(["btn w-100 peerBtn text-start rounded-3 d-flex align-items-center gap-3",{active:s.value.find(i=>i===l.id)}]),onClick:i=>D(l.id),key:l.id,disabled:f.value||u.value,ref_for:!0,ref:"sp","data-id":l.id},[u.value?b("",!0):(o(),n("span",oe,[t("i",{class:w(["bi",[s.value.find(i=>i===l.id)?"bi-check-circle-fill":"bi-circle"]])},null,2)])),t("span",ne,[t("small",ie,S(l.name?l.name:"Untitled Peer"),1),t("small",re,[t("samp",null,S(l.id),1)])]),u.value?(o(),n("span",de,[!c.success.find(i=>i===l.id)&&!c.failed.find(i=>i===l.id)?(o(),n("span",ue)):(o(),n("i",{key:1,class:w(["bi",[c.failed.find(i=>i===l.id)?"bi-x-circle-fill":"bi-check-circle-fill"]])},null,2))])):b("",!0)],10,ae))),128))],512),t("div",ce,[!f.value&&!u.value?(o(),n(p,{key:0},[t("button",{class:"btn bg-primary-subtle text-primary-emphasis border-primary-subtle rounded-3",disabled:s.value.length===0||v.value,onClick:e[4]||(e[4]=l=>V())},e[12]||(e[12]=[t("i",{class:"bi bi-download"},null,-1)]),8,fe),s.value.length>0?(o(),n("span",be,[e[13]||(e[13]=t("i",{class:"bi bi-check-circle-fill me-2"},null,-1)),r(d,{t:s.value.length+" Peer"+(s.value.length>1?"s":"")},null,8,["t"])])):b("",!0),t("button",{class:"btn bg-danger-subtle text-danger-emphasis border-danger-subtle ms-auto rounded-3",onClick:e[5]||(e[5]=l=>f.value=!0),disabled:s.value.length===0||v.value},e[14]||(e[14]=[t("i",{class:"bi bi-trash"},null,-1)]),8,ve)],64)):u.value?(o(),n(p,{key:1},[c.failed.length+c.success.length1?"s":"")},null,8,["t"]),e[16]||(e[16]=h("... "))])):(o(),n(p,{key:1},[t("strong",null,[r(d,{t:"Download Finished"})]),t("button",{onClick:e[6]||(e[6]=l=>A()),class:"btn bg-secondary-subtle text-secondary-emphasis border border-secondary-subtle rounded-3 ms-auto"},[r(d,{t:"Done"})])],64))],64)):f.value?(o(),n(p,{key:2},[t("button",{class:"btn btn-danger rounded-3",disabled:s.value.length===0||v.value,onClick:e[7]||(e[7]=l=>T())},[r(d,{t:"Yes"})],8,ge),s.value.length>0?(o(),n("strong",pe,[r(d,{t:"Are you sure to delete"}),e[17]||(e[17]=h()),r(d,{t:s.value.length+" Peer"+(s.value.length>1?"s":"")},null,8,["t"]),e[18]||(e[18]=h("? "))])):b("",!0),t("button",{class:"btn bg-secondary-subtle text-secondary-emphasis border border-secondary-subtle ms-auto rounded-3",disabled:s.value.length===0||v.value,onClick:e[8]||(e[8]=l=>f.value=!1)},[r(d,{t:"No"})],8,he)],64)):b("",!0)])])])])],512))}},we=I(xe,[["__scopeId","data-v-177407c1"]]);export{we as default}; diff --git a/src/static/app/dist/assets/settings-Dl9arqou.js b/src/static/app/dist/assets/settings-B46mikSI.js similarity index 99% rename from src/static/app/dist/assets/settings-Dl9arqou.js rename to src/static/app/dist/assets/settings-B46mikSI.js index eee948a..adab16e 100644 --- a/src/static/app/dist/assets/settings-Dl9arqou.js +++ b/src/static/app/dist/assets/settings-B46mikSI.js @@ -1 +1 @@ -import{_ as k,D as y,z as I,A as v,a as n,c as l,b as t,d as i,m as b,y as f,n as $,t as D,e as _,k as m,W as M,f as S,v as L,i as x,F as C,g as E,w as F,h as V,T as j,j as U,r as T,q as z,o as O,u as w,B as q}from"./index-CfPziasH.js";import{L as p}from"./localeText-CyxQ0Kz3.js";import{d as A}from"./dayjs.min-C4BEB1lt.js";import{V as Q}from"./vue-datepicker-BZlVex04.js";const J={components:{LocaleText:p},props:{targetData:String,title:String,warning:!1,warningText:""},setup(){const s=y(),e=`input_${I()}`;return{store:s,uuid:e}},data(){return{value:"",invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.value=this.store.Configuration.Peers[this.targetData]},methods:{async useValidation(){this.changed&&await v("/api/updateDashboardConfigurationItem",{section:"Peers",key:this.targetData,value:this.value},s=>{s.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Peers[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.isValid=!1,5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=s.message),this.changed=!1,this.updating=!1})}}},X={class:"form-group mb-2"},Z=["for"],tt=["id","disabled"],et={class:"invalid-feedback"},st={key:0,class:"px-2 py-1 text-warning-emphasis bg-warning-subtle border border-warning-subtle rounded-2 d-inline-block mt-1"};function at(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",X,[t("label",{for:this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:this.title},null,8,["t"])])])],8,Z),b(t("input",{type:"text",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),id:this.uuid,"onUpdate:modelValue":e[0]||(e[0]=a=>this.value=a),onKeydown:e[1]||(e[1]=a=>this.changed=!0),onBlur:e[2]||(e[2]=a=>g.useValidation()),disabled:this.updating},null,42,tt),[[f,this.value]]),t("div",et,D(this.invalidFeedback),1),c.warning?(n(),l("div",st,[t("small",null,[e[3]||(e[3]=t("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),i(o,{t:c.warningText},null,8,["t"])])])):_("",!0)])}const it=k(J,[["render",at]]),ot=s=>{},nt={name:"accountSettingsInputUsername",components:{LocaleText:p},props:{targetData:String,title:String},setup(){const s=y(),e=`input_${I()}`;return{store:s,uuid:e}},data(){return{value:"",invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.value=this.store.Configuration.Account[this.targetData]},methods:{async useValidation(s){this.changed&&(this.updating=!0,await v("/api/updateDashboardConfigurationItem",{section:"Account",key:this.targetData,value:this.value},e=>{e.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Account[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.isValid=!1,5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=e.message),this.changed=!1,this.updating=!1}))}}},lt={class:"form-group mb-2"},dt=["for"],rt=["id","disabled"],ut={class:"invalid-feedback"};function ct(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",lt,[t("label",{for:this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:this.title},null,8,["t"])])])],8,dt),b(t("input",{type:"text",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),id:this.uuid,"onUpdate:modelValue":e[0]||(e[0]=a=>this.value=a),onKeydown:e[1]||(e[1]=a=>this.changed=!0),onBlur:e[2]||(e[2]=a=>g.useValidation()),disabled:this.updating},null,42,rt),[[f,this.value]]),t("div",ut,D(this.invalidFeedback),1)])}const ht=k(nt,[["render",ct]]),mt={name:"accountSettingsInputPassword",components:{LocaleText:p},props:{targetData:String,warning:!1,warningText:""},setup(){const s=y(),e=`input_${I()}`;return{store:s,uuid:e}},data(){return{value:{currentPassword:"",newPassword:"",repeatNewPassword:""},invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0}},methods:{async useValidation(){Object.values(this.value).find(s=>s.length===0)===void 0?this.value.newPassword===this.value.repeatNewPassword?await v("/api/updateDashboardConfigurationItem",{section:"Account",key:this.targetData,value:this.value},s=>{s.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Account[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>{this.isValid=!1,this.value={currentPassword:"",newPassword:"",repeatNewPassword:""}},5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=s.message)}):(this.showInvalidFeedback=!0,this.invalidFeedback="New passwords does not match"):(this.showInvalidFeedback=!0,this.invalidFeedback="Please fill in all required fields.")}},computed:{passwordValid(){return Object.values(this.value).find(s=>s.length===0)===void 0&&this.value.newPassword===this.value.repeatNewPassword}}},pt={class:"d-flex flex-column gap-2"},gt={class:"row g-2"},bt={class:"col-sm"},_t={class:"form-group"},ft=["for"],vt=["id"],yt={key:0,class:"invalid-feedback d-block"},wt={class:"col-sm"},$t={class:"form-group"},kt=["for"],xt=["id"],Dt={class:"col-sm"},St={class:"form-group"},It=["for"],Ct=["id"],Pt=["disabled"];function At(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("form",pt,[t("div",gt,[t("div",bt,[t("div",_t,[t("label",{for:"currentPassword_"+this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:"Current Password"})])])],8,ft),b(t("input",{type:"password",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),autocomplete:"current-password","onUpdate:modelValue":e[0]||(e[0]=a=>this.value.currentPassword=a),id:"currentPassword_"+this.uuid},null,10,vt),[[f,this.value.currentPassword]]),u.showInvalidFeedback?(n(),l("div",yt,D(this.invalidFeedback),1)):_("",!0)])]),t("div",wt,[t("div",$t,[t("label",{for:"newPassword_"+this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:"New Password"})])])],8,kt),b(t("input",{type:"password",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),autocomplete:"new-password","onUpdate:modelValue":e[1]||(e[1]=a=>this.value.newPassword=a),id:"newPassword_"+this.uuid},null,10,xt),[[f,this.value.newPassword]])])]),t("div",Dt,[t("div",St,[t("label",{for:"repeatNewPassword_"+this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:"Repeat New Password"})])])],8,It),b(t("input",{type:"password",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),autocomplete:"new-password","onUpdate:modelValue":e[2]||(e[2]=a=>this.value.repeatNewPassword=a),id:"repeatNewPassword_"+this.uuid},null,10,Ct),[[f,this.value.repeatNewPassword]])])])]),t("button",{disabled:!this.passwordValid,class:"ms-auto btn bg-success-subtle text-success-emphasis border-1 border-success-subtle rounded-3 shadow-sm",onClick:e[3]||(e[3]=a=>this.useValidation())},[e[4]||(e[4]=t("i",{class:"bi bi-save2-fill me-2"},null,-1)),i(o,{t:"Update Password"})],8,Pt)])}const Tt=k(mt,[["render",At]]),Vt={name:"dashboardSettingsInputWireguardConfigurationPath",components:{LocaleText:p},props:{targetData:String,title:String,warning:!1,warningText:""},setup(){const s=y(),e=M(),c=`input_${I()}`;return{store:s,uuid:c,WireguardConfigurationStore:e}},data(){return{value:"",invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.value=this.store.Configuration.Server[this.targetData]},methods:{async useValidation(){this.changed&&(this.updating=!0,await v("/api/updateDashboardConfigurationItem",{section:"Server",key:this.targetData,value:this.value},s=>{s.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Account[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.isValid=!1,5e3),this.WireguardConfigurationStore.getConfigurations(),this.store.newMessage("Server","WireGuard configuration path saved","success")):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=s.message),this.changed=!1,this.updating=!1}))}}},Kt={class:"card"},Ft={class:"card-header"},Lt={class:"my-2"},Et={class:"card-body"},Mt={class:"form-group"},Ut=["for"],Nt={class:"d-flex gap-2 align-items-start"},Wt={class:"flex-grow-1"},Gt=["id","disabled"],Rt={class:"invalid-feedback fw-bold"},Yt=["disabled"],Ht={key:0,class:"bi bi-save2-fill"},Bt={key:1,class:"spinner-border spinner-border-sm"},jt={key:0,class:"px-2 py-1 text-warning-emphasis bg-warning-subtle border border-warning-subtle rounded-2 d-inline-block mt-1 mb-2"};function zt(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",Kt,[t("div",Ft,[t("h6",Lt,[i(o,{t:"Path"})])]),t("div",Et,[t("div",Mt,[t("label",{for:this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:this.title},null,8,["t"])])])],8,Ut),t("div",Nt,[t("div",Wt,[b(t("input",{type:"text",class:$(["form-control rounded-3",{"is-invalid":this.showInvalidFeedback,"is-valid":this.isValid}]),id:this.uuid,"onUpdate:modelValue":e[0]||(e[0]=a=>this.value=a),onKeydown:e[1]||(e[1]=a=>this.changed=!0),disabled:this.updating},null,42,Gt),[[f,this.value]]),t("div",Rt,D(this.invalidFeedback),1)]),t("button",{onClick:e[2]||(e[2]=a=>this.useValidation()),disabled:!this.changed,class:"ms-auto btn rounded-3 border-success-subtle bg-success-subtle text-success-emphasis"},[this.updating?(n(),l("span",Bt)):(n(),l("i",Ht))],8,Yt)]),c.warning?(n(),l("div",jt,[t("small",null,[e[3]||(e[3]=t("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),i(o,{t:c.warningText},null,8,["t"])])])):_("",!0)])])])}const Ot=k(Vt,[["render",zt]]),qt={name:"dashboardTheme",components:{LocaleText:p},setup(){return{dashboardConfigurationStore:y()}},methods:{async switchTheme(s){await v("/api/updateDashboardConfigurationItem",{section:"Server",key:"dashboard_theme",value:s},e=>{e.status&&(this.dashboardConfigurationStore.Configuration.Server.dashboard_theme=s)})}}},Qt={class:"text-muted mb-1 d-block"},Jt={class:"d-flex gap-1"};function Xt(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",null,[t("small",Qt,[t("strong",null,[i(o,{t:"Theme"})])]),t("div",Jt,[t("button",{class:$(["btn bg-primary-subtle text-primary-emphasis flex-grow-1",{active:this.dashboardConfigurationStore.Configuration.Server.dashboard_theme==="light"}]),onClick:e[0]||(e[0]=a=>this.switchTheme("light"))},[e[2]||(e[2]=t("i",{class:"bi bi-sun-fill me-2"},null,-1)),i(o,{t:"Light"})],2),t("button",{class:$(["btn bg-primary-subtle text-primary-emphasis flex-grow-1",{active:this.dashboardConfigurationStore.Configuration.Server.dashboard_theme==="dark"}]),onClick:e[1]||(e[1]=a=>this.switchTheme("dark"))},[e[3]||(e[3]=t("i",{class:"bi bi-moon-fill me-2"},null,-1)),i(o,{t:"Dark"})],2)])])}const Zt=k(qt,[["render",Xt]]),te={name:"dashboardSettingsInputIPAddressAndPort",props:{},setup(){const s=y(),e=`input_${I()}`;return{store:s,uuid:e}},data(){return{app_ip:"",app_port:"",invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.app_ip=this.store.Configuration.Server.app_ip,this.app_port=this.store.Configuration.Server.app_port},methods:{async useValidation(){this.changed&&await v("/api/updateDashboardConfigurationItem",{section:"Server",key:this.targetData,value:this.value},s=>{s.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Account[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.isValid=!1,5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=s.message)})}}},ee={class:"invalid-feedback d-block mt-0"},se={class:"row"},ae={class:"form-group mb-2 col-sm"},ie=["for"],oe=["id"],ne={class:"form-group col-sm"},le=["for"],de=["id"];function re(s,e,c,h,u,g){return n(),l("div",null,[t("div",ee,D(this.invalidFeedback),1),t("div",se,[t("div",ae,[t("label",{for:"app_ip_"+this.uuid,class:"text-muted mb-1"},e[2]||(e[2]=[t("strong",null,[t("small",null,"Dashboard IP Address")],-1)]),8,ie),b(t("input",{type:"text",class:"form-control mb-2",id:"app_ip_"+this.uuid,"onUpdate:modelValue":e[0]||(e[0]=o=>this.app_ip=o)},null,8,oe),[[f,this.app_ip]]),e[3]||(e[3]=t("div",{class:"px-2 py-1 text-warning-emphasis bg-warning-subtle border border-warning-subtle rounded-2 d-inline-block"},[t("small",null,[t("i",{class:"bi bi-exclamation-triangle-fill me-2"}),t("code",null,"0.0.0.0"),S(" means it can be access by anyone with your server IP Address.")])],-1))]),t("div",ne,[t("label",{for:"app_port_"+this.uuid,class:"text-muted mb-1"},e[4]||(e[4]=[t("strong",null,[t("small",null,"Dashboard Port")],-1)]),8,le),b(t("input",{type:"text",class:"form-control mb-2",id:"app_port_"+this.uuid,"onUpdate:modelValue":e[1]||(e[1]=o=>this.app_port=o)},null,8,de),[[f,this.app_port]])])]),e[5]||(e[5]=t("button",{class:"btn btn-success btn-sm fw-bold rounded-3"},[t("i",{class:"bi bi-floppy-fill me-2"}),S("Update Dashboard Settings & Restart ")],-1))])}const ue=k(te,[["render",re]]),ce={name:"newDashboardAPIKey",components:{LocaleText:p,VueDatePicker:Q},data(){return{newKeyData:{ExpiredAt:A().add(7,"d").format("YYYY-MM-DD HH:mm:ss"),NeverExpire:!1},submitting:!1}},setup(){return{store:y()}},mounted(){console.log(this.newKeyData.ExpiredAt)},methods:{submitNewAPIKey(){this.submitting=!0,v("/api/newDashboardAPIKey",this.newKeyData,s=>{s.status?(this.$emit("created",s.data),this.store.newMessage("Server","API Key created","success"),this.$emit("close")):this.store.newMessage("Server",s.message,"danger"),this.submitting=!1})},fixDate(s){return console.log(A(s).format("YYYY-MM-DDTHH:mm:ss")),A(s).format("YYYY-MM-DDTHH:mm:ss")},parseTime(s){s?this.newKeyData.ExpiredAt=A(s).format("YYYY-MM-DD HH:mm:ss"):this.newKeyData.ExpiredAt=void 0}}},he={class:"position-absolute w-100 h-100 top-0 start-0 rounded-bottom-3 p-3 d-flex",style:{"background-color":"#00000060","backdrop-filter":"blur(3px)"}},me={class:"card m-auto rounded-3 mt-5"},pe={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-0"},ge={class:"mb-0"},be={class:"card-body d-flex gap-2 p-4 flex-column"},_e={class:"text-muted"},fe={class:"d-flex align-items-center gap-2"},ve={class:"form-check"},ye=["disabled"],we={class:"form-check-label",for:"neverExpire"},$e={key:0,class:"bi bi-check-lg me-2"};function ke(s,e,c,h,u,g){const o=m("LocaleText"),a=m("VueDatePicker");return n(),l("div",he,[t("div",me,[t("div",pe,[t("h6",ge,[i(o,{t:"Create API Key"})]),t("button",{type:"button",class:"btn-close ms-auto",onClick:e[0]||(e[0]=r=>this.$emit("close"))})]),t("div",be,[t("small",_e,[i(o,{t:"When should this API Key expire?"})]),t("div",fe,[i(a,{is24:!0,"min-date":new Date,"model-value":this.newKeyData.ExpiredAt,"onUpdate:modelValue":this.parseTime,"time-picker-inline":"",format:"yyyy-MM-dd HH:mm:ss","preview-format":"yyyy-MM-dd HH:mm:ss",clearable:!1,disabled:this.newKeyData.NeverExpire||this.submitting,dark:this.store.Configuration.Server.dashboard_theme==="dark"},null,8,["min-date","model-value","onUpdate:modelValue","disabled","dark"])]),t("div",ve,[b(t("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":e[1]||(e[1]=r=>this.newKeyData.NeverExpire=r),id:"neverExpire",disabled:this.submitting},null,8,ye),[[L,this.newKeyData.NeverExpire]]),t("label",we,[i(o,{t:"Never Expire"}),e[3]||(e[3]=S(" (")),e[4]||(e[4]=t("i",{class:"bi bi-emoji-grimace-fill me-2"},null,-1)),i(o,{t:"Don't think that's a good idea"}),e[5]||(e[5]=S(") "))])]),t("button",{class:$(["ms-auto btn bg-success-subtle text-success-emphasis border-1 border-success-subtle rounded-3 shadow-sm",{disabled:this.submitting}]),onClick:e[2]||(e[2]=r=>this.submitNewAPIKey())},[this.submitting?_("",!0):(n(),l("i",$e)),this.submitting?(n(),x(o,{key:1,t:"Creating..."})):(n(),x(o,{key:2,t:"Create"}))],2)])])])}const xe=k(ce,[["render",ke]]),De={name:"dashboardAPIKey",components:{LocaleText:p},props:{apiKey:Object},setup(){return{store:y()}},data(){return{confirmDelete:!1}},methods:{deleteAPIKey(){v("/api/deleteDashboardAPIKey",{Key:this.apiKey.Key},s=>{s.status?(this.$emit("deleted",s.data),this.store.newMessage("Server","API Key deleted","success")):this.store.newMessage("Server",s.message,"danger")})}}},Se={class:"card rounded-3 shadow-sm"},Ie={key:0,class:"card-body d-flex gap-3 align-items-center apiKey-card-body"},Ce={class:"d-flex align-items-center gap-2"},Pe={class:"text-muted"},Ae={style:{"word-break":"break-all"}},Te={class:"d-flex align-items-center gap-2 ms-auto"},Ve={class:"text-muted"},Ke={key:0,class:"card-body d-flex gap-3 align-items-center justify-content-end"};function Fe(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",Se,[this.confirmDelete?(n(),l(C,{key:1},[this.store.getActiveCrossServer()?_("",!0):(n(),l("div",Ke,[i(o,{t:"Are you sure to delete this API key?"}),t("a",{role:"button",class:"btn btn-sm bg-success-subtle text-success-emphasis rounded-3",onClick:e[1]||(e[1]=a=>this.deleteAPIKey())},e[4]||(e[4]=[t("i",{class:"bi bi-check-lg"},null,-1)])),t("a",{role:"button",class:"btn btn-sm bg-secondary-subtle text-secondary-emphasis rounded-3",onClick:e[2]||(e[2]=a=>this.confirmDelete=!1)},e[5]||(e[5]=[t("i",{class:"bi bi-x-lg"},null,-1)]))]))],64)):(n(),l("div",Ie,[t("div",Ce,[t("small",Pe,[i(o,{t:"Key"})]),t("span",Ae,D(this.apiKey.Key),1)]),t("div",Te,[t("small",Ve,[i(o,{t:"Expire At"})]),this.apiKey.ExpiredAt?_("",!0):(n(),x(o,{key:0,t:"Never Expire"})),t("span",null,D(this.apiKey.ExpiredAt),1)]),this.store.getActiveCrossServer()?_("",!0):(n(),l("a",{key:0,role:"button",class:"btn btn-sm bg-danger-subtle text-danger-emphasis rounded-3",onClick:e[0]||(e[0]=a=>this.confirmDelete=!0)},e[3]||(e[3]=[t("i",{class:"bi bi-trash-fill"},null,-1)])))]))])}const Le=k(De,[["render",Fe],["__scopeId","data-v-a76253c8"]]),Ee={name:"dashboardAPIKeys",components:{LocaleText:p,DashboardAPIKey:Le,NewDashboardAPIKey:xe},setup(){return{store:y()}},data(){return{value:this.store.Configuration.Server.dashboard_api_key,apiKeys:[],newDashboardAPIKey:!1}},methods:{async toggleDashboardAPIKeys(){await v("/api/updateDashboardConfigurationItem",{section:"Server",key:"dashboard_api_key",value:this.value},s=>{s.status?(this.store.Configuration.Peers[this.targetData]=this.value,this.store.newMessage("Server",`API Keys function is successfully ${this.value?"enabled":"disabled"}`,"success")):(this.value=this.store.Configuration.Peers[this.targetData],this.store.newMessage("Server",`API Keys function is failed to ${this.value?"enabled":"disabled"}`,"danger"))})}},watch:{value:{immediate:!0,handler(s){s?E("/api/getDashboardAPIKeys",{},e=>{e.status?this.apiKeys=e.data:(this.apiKeys=[],this.store.newMessage("Server",e.message,"danger"))}):this.apiKeys=[]}}}},Me={class:"card rounded-3"},Ue={class:"my-2"},Ne={key:0,class:"form-check form-switch ms-auto"},We={class:"form-check-label",for:"allowAPIKeysSwitch"},Ge={key:0,class:"card-body position-relative d-flex flex-column gap-2"},Re={key:1,class:"card",style:{height:"300px"}},Ye={class:"card-body d-flex text-muted"},He={class:"m-auto"},Be={key:2,class:"d-flex flex-column gap-2 position-relative",style:{"min-height":"300px"}};function je(s,e,c,h,u,g){const o=m("LocaleText"),a=m("DashboardAPIKey"),r=m("NewDashboardAPIKey");return n(),l("div",Me,[t("div",{class:$(["card-header d-flex align-items-center",{"border-bottom-0 rounded-3":!this.value}])},[t("h6",Ue,[i(o,{t:"API Keys"})]),this.store.getActiveCrossServer()?_("",!0):(n(),l("div",Ne,[b(t("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":e[0]||(e[0]=d=>this.value=d),onChange:e[1]||(e[1]=d=>this.toggleDashboardAPIKeys()),role:"switch",id:"allowAPIKeysSwitch"},null,544),[[L,this.value]]),t("label",We,[this.value?(n(),x(o,{key:0,t:"Enabled"})):(n(),x(o,{key:1,t:"Disabled"}))])]))],2),this.value?(n(),l("div",Ge,[this.store.getActiveCrossServer()?_("",!0):(n(),l("button",{key:0,class:"btn bg-primary-subtle text-primary-emphasis border-1 border-primary-subtle rounded-3 shadow-sm",onClick:e[2]||(e[2]=d=>this.newDashboardAPIKey=!0)},[e[6]||(e[6]=t("i",{class:"bi bi-plus-circle-fill me-2"},null,-1)),i(o,{t:"API Key"})])),this.apiKeys.length===0?(n(),l("div",Re,[t("div",Ye,[t("span",He,[i(o,{t:"No WGDashboard API Key"})])])])):(n(),l("div",Be,[i(j,{name:"apiKey"},{default:F(()=>[(n(!0),l(C,null,V(this.apiKeys,d=>(n(),x(a,{apiKey:d,key:d.Key,onDeleted:e[3]||(e[3]=P=>this.apiKeys=P)},null,8,["apiKey"]))),128))]),_:1})])),i(U,{name:"zoomReversed"},{default:F(()=>[this.newDashboardAPIKey?(n(),x(r,{key:0,onCreated:e[4]||(e[4]=d=>this.apiKeys=d),onClose:e[5]||(e[5]=d=>this.newDashboardAPIKey=!1)})):_("",!0)]),_:1})])):_("",!0)])}const ze=k(Ee,[["render",je],["__scopeId","data-v-100ee9f9"]]),Oe={name:"accountSettingsMFA",components:{LocaleText:p},setup(){const s=y(),e=`input_${I()}`;return{store:s,uuid:e}},data(){return{status:!1}},mounted(){this.status=this.store.Configuration.Account.enable_totp},methods:{async resetMFA(){await v("/api/updateDashboardConfigurationItem",{section:"Account",key:"totp_verified",value:"false"},async s=>{await v("/api/updateDashboardConfigurationItem",{section:"Account",key:"enable_totp",value:"false"},e=>{e.status&&this.$router.push("/2FASetup")})})}}},qe={class:"d-flex align-items-center"},Qe={class:"form-check form-switch"},Je={for:"allowMFAKeysSwitch"};function Xe(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",null,[t("div",qe,[t("div",Qe,[b(t("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":e[0]||(e[0]=a=>this.status=a),role:"switch",id:"allowMFAKeysSwitch"},null,512),[[L,this.status]]),t("label",Je,[this.status?(n(),x(o,{key:0,t:"Enabled"})):(n(),x(o,{key:1,t:"Disabled"}))])]),this.status?(n(),l("button",{key:0,class:"btn bg-warning-subtle text-warning-emphasis border-1 border-warning-subtle ms-auto rounded-3 shadow-sm",onClick:e[1]||(e[1]=a=>this.resetMFA())},[e[2]||(e[2]=t("i",{class:"bi bi-shield-lock-fill me-2"},null,-1)),this.store.Configuration.Account.totp_verified?(n(),x(o,{key:0,t:"Reset"})):(n(),x(o,{key:1,t:"Setup"})),e[3]||(e[3]=S(" MFA "))])):_("",!0)])])}const Ze=k(Oe,[["render",Xe]]),ts={name:"dashboardLanguage",components:{LocaleText:p},setup(){return{store:y()}},data(){return{languages:void 0}},mounted(){E("/api/locale/available",{},s=>{this.languages=s.data})},methods:{changeLanguage(s){v("/api/locale/update",{lang_id:s},e=>{e.status?(this.store.Configuration.Server.dashboard_language=s,this.store.Locale=e.data):this.store.newMessage("Server","WGDashboard language update failed","danger")})}},computed:{currentLanguage(){let s=this.store.Configuration.Server.dashboard_language;return this.languages.find(e=>e.lang_id===s)}}},es={class:"text-muted d-block mb-1"},ss={class:"d-flex gap-2"},as={class:"dropdown w-100"},is=["disabled"],os={key:1},ns={class:"dropdown-menu rounded-3 shadow",style:{"max-height":"500px","overflow-y":"scroll"}},ls=["onClick"],ds={class:"me-auto mb-0"},rs={class:"d-block",style:{"font-size":"0.8rem"}},us={key:0,class:"bi bi-check text-primary fs-5"};function cs(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",null,[t("small",es,[t("strong",null,[i(o,{t:"Language"})])]),t("div",ss,[t("div",as,[t("button",{class:"btn bg-primary-subtle text-primary-emphasis dropdown-toggle w-100 rounded-3",disabled:!this.languages,type:"button","data-bs-toggle":"dropdown","aria-expanded":"false"},[this.languages?(n(),l("span",os,D(g.currentLanguage?.lang_name_localized),1)):(n(),x(o,{key:0,t:"Loading..."}))],8,is),t("ul",ns,[(n(!0),l(C,null,V(this.languages,a=>(n(),l("li",null,[t("a",{class:"dropdown-item d-flex align-items-center",role:"button",onClick:r=>this.changeLanguage(a.lang_id)},[t("p",ds,[S(D(a.lang_name_localized)+" ",1),t("small",rs,D(a.lang_name),1)]),g.currentLanguage?.lang_id===a.lang_id?(n(),l("i",us)):_("",!0)],8,ls)]))),256))])])])])}const hs=k(ts,[["render",cs],["__scopeId","data-v-4e34593e"]]),ms={name:"dashboardIPPortInput",components:{LocaleText:p},setup(){return{store:y()}},data(){return{ipAddress:"",port:0,invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.ipAddress=this.store.Configuration.Server.app_ip,this.port=this.store.Configuration.Server.app_port},methods:{async useValidation(s,e,c){this.changed&&(this.updating=!0,await v("/api/updateDashboardConfigurationItem",{section:"Server",key:e,value:c},h=>{h.status?(s.target.classList.add("is-valid"),this.showInvalidFeedback=!1,this.store.Configuration.Server[e]=c,clearTimeout(this.timeout),this.timeout=setTimeout(()=>{s.target.classList.remove("is-valid")},5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=h.message),this.changed=!1,this.updating=!1}))}}},ps={class:"row g-2"},gs={class:"col-sm"},bs={class:"form-group"},_s={for:"input_dashboard_ip",class:"text-muted mb-1"},fs=["disabled"],vs={class:"invalid-feedback"},ys={class:"col-sm"},ws={class:"form-group"},$s={for:"input_dashboard_ip",class:"text-muted mb-1"},ks=["disabled"],xs={class:"invalid-feedback"},Ds={class:"px-2 py-1 text-warning-emphasis bg-warning-subtle border border-warning-subtle rounded-2 d-inline-block mb-2 mt-2"};function Ss(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",null,[t("div",ps,[t("div",gs,[t("div",bs,[t("label",_s,[t("strong",null,[t("small",null,[i(o,{t:"IP Address / Hostname"})])])]),b(t("input",{type:"text",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),id:"input_dashboard_ip","onUpdate:modelValue":e[0]||(e[0]=a=>this.ipAddress=a),onKeydown:e[1]||(e[1]=a=>this.changed=!0),onBlur:e[2]||(e[2]=a=>g.useValidation(a,"app_ip",this.ipAddress)),disabled:this.updating},null,42,fs),[[f,this.ipAddress]]),t("div",vs,D(this.invalidFeedback),1)])]),t("div",ys,[t("div",ws,[t("label",$s,[t("strong",null,[t("small",null,[i(o,{t:"Listen Port"})])])]),b(t("input",{type:"number",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),id:"input_dashboard_ip","onUpdate:modelValue":e[3]||(e[3]=a=>this.port=a),onKeydown:e[4]||(e[4]=a=>this.changed=!0),onBlur:e[5]||(e[5]=a=>g.useValidation(a,"app_port",this.port)),disabled:this.updating},null,42,ks),[[f,this.port]]),t("div",xs,D(this.invalidFeedback),1)])])]),t("div",Ds,[t("small",null,[e[6]||(e[6]=t("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),i(o,{t:"Manual restart of WGDashboard is needed to apply changes on IP Address and Listen Port"})])])])}const Is=k(ms,[["render",Ss]]),Cs={class:"card rounded-3"},Ps={class:"card-header"},As={class:"my-2"},Ts={class:"card-body d-flex gap-2"},Vs={class:"list-group w-100"},Ks=["onClick"],Fs={__name:"dashboardSettingsWireguardConfigurationAutostart",setup(s){const e=y(),c=M(),h=T(e.Configuration.WireGuardConfiguration.autostart),u=z(()=>c.Configurations.map(a=>a.Name)),g=async()=>{await v("/api/updateDashboardConfigurationItem",{section:"WireGuardConfiguration",key:"autostart",value:h.value},async a=>{a.status?(e.newMessage("Server","Start up configurations saved","success"),h.value=a.data):e.newMessage("Server","Start up configurations failed to save","danger")})},o=a=>{h.value.includes(a)?h.value=h.value.filter(r=>r!==a):h.value.push(a),g()};return(a,r)=>(n(),l("div",Cs,[t("div",Ps,[t("h6",As,[i(p,{t:"Toggle When Start Up"})])]),t("div",Ts,[t("div",Vs,[(n(!0),l(C,null,V(u.value,d=>(n(),l("button",{type:"button",key:d,onClick:P=>o(d),class:"list-group-item list-group-item-action py-2 w-100 d-flex align-items-center"},[t("samp",null,D(d),1),t("i",{class:$(["ms-auto",[h.value.includes(d)?"bi-check-circle-fill":"bi-circle"]])},null,2)],8,Ks))),128))])])]))}},Ls=k(Fs,[["__scopeId","data-v-4aa2aed9"]]),Es={class:"card"},Ms={class:"card-header"},Us={class:"my-2 d-flex"},Ns={key:0,class:"text-success ms-auto"},Ws={class:"card-body d-flex flex-column gap-3"},Gs={class:"row gx-2 gy-2"},Rs={class:"col-12 col-lg-4"},Ys={class:"form-group"},Hs={for:"server",class:"text-muted mb-1"},Bs={class:"col-12 col-lg-4"},js={class:"form-group"},zs={for:"port",class:"text-muted mb-1"},Os={class:"col-12 col-lg-4"},qs={class:"form-group"},Qs={for:"encryption",class:"text-muted mb-1"},Js={value:"NOTLS"},Xs={class:"col-12 col-lg-4"},Zs={class:"form-group"},ta={for:"username",class:"text-muted mb-1"},ea={class:"col-12 col-lg-4"},sa={class:"form-group"},aa={for:"email_password",class:"text-muted mb-1"},ia={class:"col-12 col-lg-4"},oa={class:"form-group"},na={for:"send_from",class:"text-muted mb-1"},la={key:0},da={key:1},ra={class:"text-muted mb-1",for:"test_email"},ua={class:"fw-bold"},ca=["disabled"],ha=["disabled"],ma={key:0,class:"bi bi-send me-2"},pa={key:1,class:"spinner-border spinner-border-sm me-2"},ga={class:"text-muted mb-1",for:"email_template"},ba={class:"fw-bold"},_a={__name:"dashboardEmailSettings",setup(s){const e=y();O(()=>{g(),document.querySelectorAll("#emailAccount input, #emailAccount select, #email_template").forEach(a=>{a.addEventListener("change",async()=>{let r=a.attributes.getNamedItem("id").value;await v("/api/updateDashboardConfigurationItem",{section:"Email",key:r,value:a.value},d=>{d.status?(a.classList.remove("is-invalid"),a.classList.add("is-valid")):(a.classList.remove("is-valid"),a.classList.add("is-invalid")),g()})})})});const c=T(!1),h=T(""),u=T(!1),g=async()=>{await E("/api/email/ready",{},a=>{c.value=a.status})},o=async()=>{u.value=!0,await v("/api/email/send",{Receiver:h.value,Subject:"WGDashboard Testing Email",Body:"Test 1, 2, 3! Hello World :)"},a=>{a.status?e.newMessage("Server","Test email sent successfully!","success"):e.newMessage("Server",`Test email sent failed! Reason: ${a.message}`,"danger"),u.value=!1})};return(a,r)=>(n(),l("div",Es,[t("div",Ms,[t("h6",Us,[i(p,{t:"Email Account"}),c.value?(n(),l("span",Ns,[r[10]||(r[10]=t("i",{class:"bi bi-check-circle-fill me-2"},null,-1)),i(p,{t:"Ready"})])):_("",!0)])]),t("div",Ws,[t("form",{onSubmit:r[6]||(r[6]=d=>d.preventDefault(d)),id:"emailAccount"},[t("div",Gs,[t("div",Rs,[t("div",Ys,[t("label",Hs,[t("strong",null,[t("small",null,[i(p,{t:"Server"})])])]),b(t("input",{id:"server","onUpdate:modelValue":r[0]||(r[0]=d=>w(e).Configuration.Email.server=d),type:"text",class:"form-control"},null,512),[[f,w(e).Configuration.Email.server]])])]),t("div",Bs,[t("div",js,[t("label",zs,[t("strong",null,[t("small",null,[i(p,{t:"Port"})])])]),b(t("input",{id:"port","onUpdate:modelValue":r[1]||(r[1]=d=>w(e).Configuration.Email.port=d),type:"text",class:"form-control"},null,512),[[f,w(e).Configuration.Email.port]])])]),t("div",Os,[t("div",qs,[t("label",Qs,[t("strong",null,[t("small",null,[i(p,{t:"Encryption"})])])]),b(t("select",{class:"form-select","onUpdate:modelValue":r[2]||(r[2]=d=>w(e).Configuration.Email.encryption=d),id:"encryption"},[r[11]||(r[11]=t("option",{value:"STARTTLS"}," STARTTLS ",-1)),t("option",Js,[i(p,{t:"No Encryption"})])],512),[[q,w(e).Configuration.Email.encryption]])])]),t("div",Xs,[t("div",Zs,[t("label",ta,[t("strong",null,[t("small",null,[i(p,{t:"Username"})])])]),b(t("input",{id:"username","onUpdate:modelValue":r[3]||(r[3]=d=>w(e).Configuration.Email.username=d),type:"text",class:"form-control"},null,512),[[f,w(e).Configuration.Email.username]])])]),t("div",ea,[t("div",sa,[t("label",aa,[t("strong",null,[t("small",null,[i(p,{t:"Password"})])])]),b(t("input",{id:"email_password","onUpdate:modelValue":r[4]||(r[4]=d=>w(e).Configuration.Email.email_password=d),type:"password",class:"form-control"},null,512),[[f,w(e).Configuration.Email.email_password]])])]),t("div",ia,[t("div",oa,[t("label",na,[t("strong",null,[t("small",null,[i(p,{t:"Send From"})])])]),b(t("input",{id:"send_from","onUpdate:modelValue":r[5]||(r[5]=d=>w(e).Configuration.Email.send_from=d),type:"text",class:"form-control"},null,512),[[f,w(e).Configuration.Email.send_from]])])])])],32),c.value?(n(),l("hr",la)):_("",!0),c.value?(n(),l("div",da,[t("label",ra,[t("small",ua,[i(p,{t:"Send Test Email"})])]),t("form",{onSubmit:r[8]||(r[8]=d=>{d.preventDefault(),o()}),class:"input-group"},[b(t("input",{type:"email",class:"form-control rounded-start-3",id:"test_email",placeholder:"john@example.com","onUpdate:modelValue":r[7]||(r[7]=d=>h.value=d),disabled:u.value},null,8,ca),[[f,h.value]]),t("button",{class:"btn bg-primary-subtle text-primary-emphasis border-primary-subtle rounded-end-3",type:"submit",value:"Submit",disabled:h.value.length===0||u.value,id:"button-addon2"},[u.value?(n(),l("span",pa)):(n(),l("i",ma)),i(p,{t:u.value?"Sending...":"Send"},null,8,["t"])],8,ha)],32)])):_("",!0),r[12]||(r[12]=t("hr",null,null,-1)),t("div",null,[t("label",ga,[t("small",ba,[i(p,{t:"Email Body Template"})])]),b(t("textarea",{class:"form-control rounded-3 font-monospace","onUpdate:modelValue":r[9]||(r[9]=d=>w(e).Configuration.Email.email_template=d),id:"email_template",style:{"min-height":"400px"}},null,512),[[f,w(e).Configuration.Email.email_template]])])])]))}},fa={name:"settings",methods:{ipV46RegexCheck:ot},components:{DashboardEmailSettings:_a,DashboardSettingsWireguardConfigurationAutostart:Ls,DashboardIPPortInput:Is,DashboardLanguage:hs,LocaleText:p,AccountSettingsMFA:Ze,DashboardAPIKeys:ze,DashboardSettingsInputIPAddressAndPort:ue,DashboardTheme:Zt,DashboardSettingsInputWireguardConfigurationPath:Ot,AccountSettingsInputPassword:Tt,AccountSettingsInputUsername:ht,PeersDefaultSettingsInput:it},setup(){return{dashboardConfigurationStore:y()}},data(){return{activeTab:"WGDashboard",tabs:[{id:"WGDashboard",title:"WGDashboard Settings"},{id:"Peers",title:"Peers Settings"},{id:"WireGuardConfiguration",title:"WireGuard Configuration Settings"}]}}},va={class:"mt-md-5 mt-3 text-body mb-3"},ya={class:"container-md d-flex flex-column gap-4"},wa={class:"nav nav-pills nav-justified align-items-center gap-2"},$a={class:"nav-item"},ka=["onClick"],xa={class:"my-2"},Da={key:0,class:"d-flex gap-3 flex-column"},Sa={key:1,class:"d-flex gap-3 flex-column"},Ia={class:"card rounded-3"},Ca={class:"card-header"},Pa={class:"my-2"},Aa={class:"card-body"},Ta={key:2,class:"d-flex gap-3 flex-column"},Va={class:"card rounded-3"},Ka={class:"card-header"},Fa={class:"my-2"},La={class:"card-body"},Ea={class:"row g-2"},Ma={class:"col-sm"},Ua={class:"col-sm"},Na={class:"card"},Wa={class:"card-header"},Ga={class:"my-2"},Ra={class:"card-body"},Ya={class:"card"},Ha={class:"card-header"},Ba={class:"my-2"},ja={class:"card-body d-flex flex-column gap-3"},za={class:"card"},Oa={class:"card-header"},qa={class:"my-2"},Qa={class:"card-body"};function Ja(s,e,c,h,u,g){const o=m("LocaleText"),a=m("DashboardSettingsInputWireguardConfigurationPath"),r=m("DashboardSettingsWireguardConfigurationAutostart"),d=m("PeersDefaultSettingsInput"),P=m("DashboardTheme"),N=m("DashboardLanguage"),W=m("DashboardIPPortInput"),G=m("AccountSettingsInputUsername"),R=m("AccountSettingsInputPassword"),Y=m("AccountSettingsMFA"),H=m("DashboardAPIKeys"),B=m("DashboardEmailSettings");return n(),l("div",va,[t("div",ya,[t("div",null,[t("ul",wa,[(n(!0),l(C,null,V(this.tabs,K=>(n(),l("li",$a,[t("a",{class:$(["nav-link rounded-3",{active:this.activeTab===K.id}]),onClick:Xa=>this.activeTab=K.id,role:"button"},[t("h6",xa,[i(o,{t:K.title},null,8,["t"])])],10,ka)]))),256))]),e[1]||(e[1]=t("hr",null,null,-1)),t("div",null,[i(U,{name:"fade2",mode:"out-in"},{default:F(()=>[u.activeTab==="WireGuardConfiguration"?(n(),l("div",Da,[i(a,{targetData:"wg_conf_path",title:"Configurations Directory",warning:!0,"warning-text":"Remember to remove / at the end of your path. e.g /etc/wireguard"}),i(r)])):u.activeTab==="Peers"?(n(),l("div",Sa,[t("div",Ia,[t("div",Ca,[t("h6",Pa,[i(o,{t:"Peer Default Settings"})])]),t("div",Aa,[t("div",null,[i(d,{targetData:"peer_global_dns",title:"DNS"}),i(d,{targetData:"peer_endpoint_allowed_ip",title:"Endpoint Allowed IPs"}),i(d,{targetData:"peer_mtu",title:"MTU"}),i(d,{targetData:"peer_keep_alive",title:"Persistent Keepalive"}),i(d,{targetData:"remote_endpoint",title:"Peer Remote Endpoint",warning:!0,warningText:"This will be changed globally, and will be apply to all peer's QR code and configuration file."})])])])])):u.activeTab==="WGDashboard"?(n(),l("div",Ta,[t("div",Va,[t("div",Ka,[t("h6",Fa,[i(o,{t:"Appearance"})])]),t("div",La,[t("div",Ea,[t("div",Ma,[i(P)]),t("div",Ua,[i(N)])])])]),t("div",Na,[t("div",Wa,[t("h6",Ga,[i(o,{t:"Dashboard IP Address & Listen Port"})])]),t("div",Ra,[i(W)])]),t("div",Ya,[t("div",Ha,[t("h6",Ba,[i(o,{t:"Account Settings"})])]),t("div",ja,[t("div",null,[i(G,{targetData:"username",title:"Username"})]),e[0]||(e[0]=t("hr",null,null,-1)),t("div",null,[i(R,{targetData:"password"})])])]),t("div",za,[t("div",Oa,[t("h6",qa,[i(o,{t:"Multi-Factor Authentication (MFA)"})])]),t("div",Qa,[this.dashboardConfigurationStore.getActiveCrossServer()?_("",!0):(n(),x(Y,{key:0}))])]),i(H),i(B)])):_("",!0)]),_:1})])])])])}const ai=k(fa,[["render",Ja]]);export{ai as default}; +import{_ as k,D as y,z as I,A as v,a as n,c as l,b as t,d as i,m as b,y as f,n as $,t as D,e as _,k as m,W as M,f as S,v as L,i as x,F as C,g as E,w as F,h as V,T as j,j as U,r as T,q as z,o as O,u as w,B as q}from"./index-AzYVPyhh.js";import{L as p}from"./localeText-qJNpKS91.js";import{d as A}from"./dayjs.min-DO3nadR-.js";import{V as Q}from"./vue-datepicker-Co-zpMN6.js";const J={components:{LocaleText:p},props:{targetData:String,title:String,warning:!1,warningText:""},setup(){const s=y(),e=`input_${I()}`;return{store:s,uuid:e}},data(){return{value:"",invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.value=this.store.Configuration.Peers[this.targetData]},methods:{async useValidation(){this.changed&&await v("/api/updateDashboardConfigurationItem",{section:"Peers",key:this.targetData,value:this.value},s=>{s.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Peers[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.isValid=!1,5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=s.message),this.changed=!1,this.updating=!1})}}},X={class:"form-group mb-2"},Z=["for"],tt=["id","disabled"],et={class:"invalid-feedback"},st={key:0,class:"px-2 py-1 text-warning-emphasis bg-warning-subtle border border-warning-subtle rounded-2 d-inline-block mt-1"};function at(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",X,[t("label",{for:this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:this.title},null,8,["t"])])])],8,Z),b(t("input",{type:"text",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),id:this.uuid,"onUpdate:modelValue":e[0]||(e[0]=a=>this.value=a),onKeydown:e[1]||(e[1]=a=>this.changed=!0),onBlur:e[2]||(e[2]=a=>g.useValidation()),disabled:this.updating},null,42,tt),[[f,this.value]]),t("div",et,D(this.invalidFeedback),1),c.warning?(n(),l("div",st,[t("small",null,[e[3]||(e[3]=t("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),i(o,{t:c.warningText},null,8,["t"])])])):_("",!0)])}const it=k(J,[["render",at]]),ot=s=>{},nt={name:"accountSettingsInputUsername",components:{LocaleText:p},props:{targetData:String,title:String},setup(){const s=y(),e=`input_${I()}`;return{store:s,uuid:e}},data(){return{value:"",invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.value=this.store.Configuration.Account[this.targetData]},methods:{async useValidation(s){this.changed&&(this.updating=!0,await v("/api/updateDashboardConfigurationItem",{section:"Account",key:this.targetData,value:this.value},e=>{e.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Account[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.isValid=!1,5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=e.message),this.changed=!1,this.updating=!1}))}}},lt={class:"form-group mb-2"},dt=["for"],rt=["id","disabled"],ut={class:"invalid-feedback"};function ct(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",lt,[t("label",{for:this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:this.title},null,8,["t"])])])],8,dt),b(t("input",{type:"text",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),id:this.uuid,"onUpdate:modelValue":e[0]||(e[0]=a=>this.value=a),onKeydown:e[1]||(e[1]=a=>this.changed=!0),onBlur:e[2]||(e[2]=a=>g.useValidation()),disabled:this.updating},null,42,rt),[[f,this.value]]),t("div",ut,D(this.invalidFeedback),1)])}const ht=k(nt,[["render",ct]]),mt={name:"accountSettingsInputPassword",components:{LocaleText:p},props:{targetData:String,warning:!1,warningText:""},setup(){const s=y(),e=`input_${I()}`;return{store:s,uuid:e}},data(){return{value:{currentPassword:"",newPassword:"",repeatNewPassword:""},invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0}},methods:{async useValidation(){Object.values(this.value).find(s=>s.length===0)===void 0?this.value.newPassword===this.value.repeatNewPassword?await v("/api/updateDashboardConfigurationItem",{section:"Account",key:this.targetData,value:this.value},s=>{s.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Account[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>{this.isValid=!1,this.value={currentPassword:"",newPassword:"",repeatNewPassword:""}},5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=s.message)}):(this.showInvalidFeedback=!0,this.invalidFeedback="New passwords does not match"):(this.showInvalidFeedback=!0,this.invalidFeedback="Please fill in all required fields.")}},computed:{passwordValid(){return Object.values(this.value).find(s=>s.length===0)===void 0&&this.value.newPassword===this.value.repeatNewPassword}}},pt={class:"d-flex flex-column gap-2"},gt={class:"row g-2"},bt={class:"col-sm"},_t={class:"form-group"},ft=["for"],vt=["id"],yt={key:0,class:"invalid-feedback d-block"},wt={class:"col-sm"},$t={class:"form-group"},kt=["for"],xt=["id"],Dt={class:"col-sm"},St={class:"form-group"},It=["for"],Ct=["id"],Pt=["disabled"];function At(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("form",pt,[t("div",gt,[t("div",bt,[t("div",_t,[t("label",{for:"currentPassword_"+this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:"Current Password"})])])],8,ft),b(t("input",{type:"password",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),autocomplete:"current-password","onUpdate:modelValue":e[0]||(e[0]=a=>this.value.currentPassword=a),id:"currentPassword_"+this.uuid},null,10,vt),[[f,this.value.currentPassword]]),u.showInvalidFeedback?(n(),l("div",yt,D(this.invalidFeedback),1)):_("",!0)])]),t("div",wt,[t("div",$t,[t("label",{for:"newPassword_"+this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:"New Password"})])])],8,kt),b(t("input",{type:"password",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),autocomplete:"new-password","onUpdate:modelValue":e[1]||(e[1]=a=>this.value.newPassword=a),id:"newPassword_"+this.uuid},null,10,xt),[[f,this.value.newPassword]])])]),t("div",Dt,[t("div",St,[t("label",{for:"repeatNewPassword_"+this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:"Repeat New Password"})])])],8,It),b(t("input",{type:"password",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),autocomplete:"new-password","onUpdate:modelValue":e[2]||(e[2]=a=>this.value.repeatNewPassword=a),id:"repeatNewPassword_"+this.uuid},null,10,Ct),[[f,this.value.repeatNewPassword]])])])]),t("button",{disabled:!this.passwordValid,class:"ms-auto btn bg-success-subtle text-success-emphasis border-1 border-success-subtle rounded-3 shadow-sm",onClick:e[3]||(e[3]=a=>this.useValidation())},[e[4]||(e[4]=t("i",{class:"bi bi-save2-fill me-2"},null,-1)),i(o,{t:"Update Password"})],8,Pt)])}const Tt=k(mt,[["render",At]]),Vt={name:"dashboardSettingsInputWireguardConfigurationPath",components:{LocaleText:p},props:{targetData:String,title:String,warning:!1,warningText:""},setup(){const s=y(),e=M(),c=`input_${I()}`;return{store:s,uuid:c,WireguardConfigurationStore:e}},data(){return{value:"",invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.value=this.store.Configuration.Server[this.targetData]},methods:{async useValidation(){this.changed&&(this.updating=!0,await v("/api/updateDashboardConfigurationItem",{section:"Server",key:this.targetData,value:this.value},s=>{s.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Account[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.isValid=!1,5e3),this.WireguardConfigurationStore.getConfigurations(),this.store.newMessage("Server","WireGuard configuration path saved","success")):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=s.message),this.changed=!1,this.updating=!1}))}}},Kt={class:"card"},Ft={class:"card-header"},Lt={class:"my-2"},Et={class:"card-body"},Mt={class:"form-group"},Ut=["for"],Nt={class:"d-flex gap-2 align-items-start"},Wt={class:"flex-grow-1"},Gt=["id","disabled"],Rt={class:"invalid-feedback fw-bold"},Yt=["disabled"],Ht={key:0,class:"bi bi-save2-fill"},Bt={key:1,class:"spinner-border spinner-border-sm"},jt={key:0,class:"px-2 py-1 text-warning-emphasis bg-warning-subtle border border-warning-subtle rounded-2 d-inline-block mt-1 mb-2"};function zt(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",Kt,[t("div",Ft,[t("h6",Lt,[i(o,{t:"Path"})])]),t("div",Et,[t("div",Mt,[t("label",{for:this.uuid,class:"text-muted mb-1"},[t("strong",null,[t("small",null,[i(o,{t:this.title},null,8,["t"])])])],8,Ut),t("div",Nt,[t("div",Wt,[b(t("input",{type:"text",class:$(["form-control rounded-3",{"is-invalid":this.showInvalidFeedback,"is-valid":this.isValid}]),id:this.uuid,"onUpdate:modelValue":e[0]||(e[0]=a=>this.value=a),onKeydown:e[1]||(e[1]=a=>this.changed=!0),disabled:this.updating},null,42,Gt),[[f,this.value]]),t("div",Rt,D(this.invalidFeedback),1)]),t("button",{onClick:e[2]||(e[2]=a=>this.useValidation()),disabled:!this.changed,class:"ms-auto btn rounded-3 border-success-subtle bg-success-subtle text-success-emphasis"},[this.updating?(n(),l("span",Bt)):(n(),l("i",Ht))],8,Yt)]),c.warning?(n(),l("div",jt,[t("small",null,[e[3]||(e[3]=t("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),i(o,{t:c.warningText},null,8,["t"])])])):_("",!0)])])])}const Ot=k(Vt,[["render",zt]]),qt={name:"dashboardTheme",components:{LocaleText:p},setup(){return{dashboardConfigurationStore:y()}},methods:{async switchTheme(s){await v("/api/updateDashboardConfigurationItem",{section:"Server",key:"dashboard_theme",value:s},e=>{e.status&&(this.dashboardConfigurationStore.Configuration.Server.dashboard_theme=s)})}}},Qt={class:"text-muted mb-1 d-block"},Jt={class:"d-flex gap-1"};function Xt(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",null,[t("small",Qt,[t("strong",null,[i(o,{t:"Theme"})])]),t("div",Jt,[t("button",{class:$(["btn bg-primary-subtle text-primary-emphasis flex-grow-1",{active:this.dashboardConfigurationStore.Configuration.Server.dashboard_theme==="light"}]),onClick:e[0]||(e[0]=a=>this.switchTheme("light"))},[e[2]||(e[2]=t("i",{class:"bi bi-sun-fill me-2"},null,-1)),i(o,{t:"Light"})],2),t("button",{class:$(["btn bg-primary-subtle text-primary-emphasis flex-grow-1",{active:this.dashboardConfigurationStore.Configuration.Server.dashboard_theme==="dark"}]),onClick:e[1]||(e[1]=a=>this.switchTheme("dark"))},[e[3]||(e[3]=t("i",{class:"bi bi-moon-fill me-2"},null,-1)),i(o,{t:"Dark"})],2)])])}const Zt=k(qt,[["render",Xt]]),te={name:"dashboardSettingsInputIPAddressAndPort",props:{},setup(){const s=y(),e=`input_${I()}`;return{store:s,uuid:e}},data(){return{app_ip:"",app_port:"",invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.app_ip=this.store.Configuration.Server.app_ip,this.app_port=this.store.Configuration.Server.app_port},methods:{async useValidation(){this.changed&&await v("/api/updateDashboardConfigurationItem",{section:"Server",key:this.targetData,value:this.value},s=>{s.status?(this.isValid=!0,this.showInvalidFeedback=!1,this.store.Configuration.Account[this.targetData]=this.value,clearTimeout(this.timeout),this.timeout=setTimeout(()=>this.isValid=!1,5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=s.message)})}}},ee={class:"invalid-feedback d-block mt-0"},se={class:"row"},ae={class:"form-group mb-2 col-sm"},ie=["for"],oe=["id"],ne={class:"form-group col-sm"},le=["for"],de=["id"];function re(s,e,c,h,u,g){return n(),l("div",null,[t("div",ee,D(this.invalidFeedback),1),t("div",se,[t("div",ae,[t("label",{for:"app_ip_"+this.uuid,class:"text-muted mb-1"},e[2]||(e[2]=[t("strong",null,[t("small",null,"Dashboard IP Address")],-1)]),8,ie),b(t("input",{type:"text",class:"form-control mb-2",id:"app_ip_"+this.uuid,"onUpdate:modelValue":e[0]||(e[0]=o=>this.app_ip=o)},null,8,oe),[[f,this.app_ip]]),e[3]||(e[3]=t("div",{class:"px-2 py-1 text-warning-emphasis bg-warning-subtle border border-warning-subtle rounded-2 d-inline-block"},[t("small",null,[t("i",{class:"bi bi-exclamation-triangle-fill me-2"}),t("code",null,"0.0.0.0"),S(" means it can be access by anyone with your server IP Address.")])],-1))]),t("div",ne,[t("label",{for:"app_port_"+this.uuid,class:"text-muted mb-1"},e[4]||(e[4]=[t("strong",null,[t("small",null,"Dashboard Port")],-1)]),8,le),b(t("input",{type:"text",class:"form-control mb-2",id:"app_port_"+this.uuid,"onUpdate:modelValue":e[1]||(e[1]=o=>this.app_port=o)},null,8,de),[[f,this.app_port]])])]),e[5]||(e[5]=t("button",{class:"btn btn-success btn-sm fw-bold rounded-3"},[t("i",{class:"bi bi-floppy-fill me-2"}),S("Update Dashboard Settings & Restart ")],-1))])}const ue=k(te,[["render",re]]),ce={name:"newDashboardAPIKey",components:{LocaleText:p,VueDatePicker:Q},data(){return{newKeyData:{ExpiredAt:A().add(7,"d").format("YYYY-MM-DD HH:mm:ss"),NeverExpire:!1},submitting:!1}},setup(){return{store:y()}},mounted(){console.log(this.newKeyData.ExpiredAt)},methods:{submitNewAPIKey(){this.submitting=!0,v("/api/newDashboardAPIKey",this.newKeyData,s=>{s.status?(this.$emit("created",s.data),this.store.newMessage("Server","API Key created","success"),this.$emit("close")):this.store.newMessage("Server",s.message,"danger"),this.submitting=!1})},fixDate(s){return console.log(A(s).format("YYYY-MM-DDTHH:mm:ss")),A(s).format("YYYY-MM-DDTHH:mm:ss")},parseTime(s){s?this.newKeyData.ExpiredAt=A(s).format("YYYY-MM-DD HH:mm:ss"):this.newKeyData.ExpiredAt=void 0}}},he={class:"position-absolute w-100 h-100 top-0 start-0 rounded-bottom-3 p-3 d-flex",style:{"background-color":"#00000060","backdrop-filter":"blur(3px)"}},me={class:"card m-auto rounded-3 mt-5"},pe={class:"card-header bg-transparent d-flex align-items-center gap-2 border-0 p-4 pb-0"},ge={class:"mb-0"},be={class:"card-body d-flex gap-2 p-4 flex-column"},_e={class:"text-muted"},fe={class:"d-flex align-items-center gap-2"},ve={class:"form-check"},ye=["disabled"],we={class:"form-check-label",for:"neverExpire"},$e={key:0,class:"bi bi-check-lg me-2"};function ke(s,e,c,h,u,g){const o=m("LocaleText"),a=m("VueDatePicker");return n(),l("div",he,[t("div",me,[t("div",pe,[t("h6",ge,[i(o,{t:"Create API Key"})]),t("button",{type:"button",class:"btn-close ms-auto",onClick:e[0]||(e[0]=r=>this.$emit("close"))})]),t("div",be,[t("small",_e,[i(o,{t:"When should this API Key expire?"})]),t("div",fe,[i(a,{is24:!0,"min-date":new Date,"model-value":this.newKeyData.ExpiredAt,"onUpdate:modelValue":this.parseTime,"time-picker-inline":"",format:"yyyy-MM-dd HH:mm:ss","preview-format":"yyyy-MM-dd HH:mm:ss",clearable:!1,disabled:this.newKeyData.NeverExpire||this.submitting,dark:this.store.Configuration.Server.dashboard_theme==="dark"},null,8,["min-date","model-value","onUpdate:modelValue","disabled","dark"])]),t("div",ve,[b(t("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":e[1]||(e[1]=r=>this.newKeyData.NeverExpire=r),id:"neverExpire",disabled:this.submitting},null,8,ye),[[L,this.newKeyData.NeverExpire]]),t("label",we,[i(o,{t:"Never Expire"}),e[3]||(e[3]=S(" (")),e[4]||(e[4]=t("i",{class:"bi bi-emoji-grimace-fill me-2"},null,-1)),i(o,{t:"Don't think that's a good idea"}),e[5]||(e[5]=S(") "))])]),t("button",{class:$(["ms-auto btn bg-success-subtle text-success-emphasis border-1 border-success-subtle rounded-3 shadow-sm",{disabled:this.submitting}]),onClick:e[2]||(e[2]=r=>this.submitNewAPIKey())},[this.submitting?_("",!0):(n(),l("i",$e)),this.submitting?(n(),x(o,{key:1,t:"Creating..."})):(n(),x(o,{key:2,t:"Create"}))],2)])])])}const xe=k(ce,[["render",ke]]),De={name:"dashboardAPIKey",components:{LocaleText:p},props:{apiKey:Object},setup(){return{store:y()}},data(){return{confirmDelete:!1}},methods:{deleteAPIKey(){v("/api/deleteDashboardAPIKey",{Key:this.apiKey.Key},s=>{s.status?(this.$emit("deleted",s.data),this.store.newMessage("Server","API Key deleted","success")):this.store.newMessage("Server",s.message,"danger")})}}},Se={class:"card rounded-3 shadow-sm"},Ie={key:0,class:"card-body d-flex gap-3 align-items-center apiKey-card-body"},Ce={class:"d-flex align-items-center gap-2"},Pe={class:"text-muted"},Ae={style:{"word-break":"break-all"}},Te={class:"d-flex align-items-center gap-2 ms-auto"},Ve={class:"text-muted"},Ke={key:0,class:"card-body d-flex gap-3 align-items-center justify-content-end"};function Fe(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",Se,[this.confirmDelete?(n(),l(C,{key:1},[this.store.getActiveCrossServer()?_("",!0):(n(),l("div",Ke,[i(o,{t:"Are you sure to delete this API key?"}),t("a",{role:"button",class:"btn btn-sm bg-success-subtle text-success-emphasis rounded-3",onClick:e[1]||(e[1]=a=>this.deleteAPIKey())},e[4]||(e[4]=[t("i",{class:"bi bi-check-lg"},null,-1)])),t("a",{role:"button",class:"btn btn-sm bg-secondary-subtle text-secondary-emphasis rounded-3",onClick:e[2]||(e[2]=a=>this.confirmDelete=!1)},e[5]||(e[5]=[t("i",{class:"bi bi-x-lg"},null,-1)]))]))],64)):(n(),l("div",Ie,[t("div",Ce,[t("small",Pe,[i(o,{t:"Key"})]),t("span",Ae,D(this.apiKey.Key),1)]),t("div",Te,[t("small",Ve,[i(o,{t:"Expire At"})]),this.apiKey.ExpiredAt?_("",!0):(n(),x(o,{key:0,t:"Never Expire"})),t("span",null,D(this.apiKey.ExpiredAt),1)]),this.store.getActiveCrossServer()?_("",!0):(n(),l("a",{key:0,role:"button",class:"btn btn-sm bg-danger-subtle text-danger-emphasis rounded-3",onClick:e[0]||(e[0]=a=>this.confirmDelete=!0)},e[3]||(e[3]=[t("i",{class:"bi bi-trash-fill"},null,-1)])))]))])}const Le=k(De,[["render",Fe],["__scopeId","data-v-a76253c8"]]),Ee={name:"dashboardAPIKeys",components:{LocaleText:p,DashboardAPIKey:Le,NewDashboardAPIKey:xe},setup(){return{store:y()}},data(){return{value:this.store.Configuration.Server.dashboard_api_key,apiKeys:[],newDashboardAPIKey:!1}},methods:{async toggleDashboardAPIKeys(){await v("/api/updateDashboardConfigurationItem",{section:"Server",key:"dashboard_api_key",value:this.value},s=>{s.status?(this.store.Configuration.Peers[this.targetData]=this.value,this.store.newMessage("Server",`API Keys function is successfully ${this.value?"enabled":"disabled"}`,"success")):(this.value=this.store.Configuration.Peers[this.targetData],this.store.newMessage("Server",`API Keys function is failed to ${this.value?"enabled":"disabled"}`,"danger"))})}},watch:{value:{immediate:!0,handler(s){s?E("/api/getDashboardAPIKeys",{},e=>{e.status?this.apiKeys=e.data:(this.apiKeys=[],this.store.newMessage("Server",e.message,"danger"))}):this.apiKeys=[]}}}},Me={class:"card rounded-3"},Ue={class:"my-2"},Ne={key:0,class:"form-check form-switch ms-auto"},We={class:"form-check-label",for:"allowAPIKeysSwitch"},Ge={key:0,class:"card-body position-relative d-flex flex-column gap-2"},Re={key:1,class:"card",style:{height:"300px"}},Ye={class:"card-body d-flex text-muted"},He={class:"m-auto"},Be={key:2,class:"d-flex flex-column gap-2 position-relative",style:{"min-height":"300px"}};function je(s,e,c,h,u,g){const o=m("LocaleText"),a=m("DashboardAPIKey"),r=m("NewDashboardAPIKey");return n(),l("div",Me,[t("div",{class:$(["card-header d-flex align-items-center",{"border-bottom-0 rounded-3":!this.value}])},[t("h6",Ue,[i(o,{t:"API Keys"})]),this.store.getActiveCrossServer()?_("",!0):(n(),l("div",Ne,[b(t("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":e[0]||(e[0]=d=>this.value=d),onChange:e[1]||(e[1]=d=>this.toggleDashboardAPIKeys()),role:"switch",id:"allowAPIKeysSwitch"},null,544),[[L,this.value]]),t("label",We,[this.value?(n(),x(o,{key:0,t:"Enabled"})):(n(),x(o,{key:1,t:"Disabled"}))])]))],2),this.value?(n(),l("div",Ge,[this.store.getActiveCrossServer()?_("",!0):(n(),l("button",{key:0,class:"btn bg-primary-subtle text-primary-emphasis border-1 border-primary-subtle rounded-3 shadow-sm",onClick:e[2]||(e[2]=d=>this.newDashboardAPIKey=!0)},[e[6]||(e[6]=t("i",{class:"bi bi-plus-circle-fill me-2"},null,-1)),i(o,{t:"API Key"})])),this.apiKeys.length===0?(n(),l("div",Re,[t("div",Ye,[t("span",He,[i(o,{t:"No WGDashboard API Key"})])])])):(n(),l("div",Be,[i(j,{name:"apiKey"},{default:F(()=>[(n(!0),l(C,null,V(this.apiKeys,d=>(n(),x(a,{apiKey:d,key:d.Key,onDeleted:e[3]||(e[3]=P=>this.apiKeys=P)},null,8,["apiKey"]))),128))]),_:1})])),i(U,{name:"zoomReversed"},{default:F(()=>[this.newDashboardAPIKey?(n(),x(r,{key:0,onCreated:e[4]||(e[4]=d=>this.apiKeys=d),onClose:e[5]||(e[5]=d=>this.newDashboardAPIKey=!1)})):_("",!0)]),_:1})])):_("",!0)])}const ze=k(Ee,[["render",je],["__scopeId","data-v-100ee9f9"]]),Oe={name:"accountSettingsMFA",components:{LocaleText:p},setup(){const s=y(),e=`input_${I()}`;return{store:s,uuid:e}},data(){return{status:!1}},mounted(){this.status=this.store.Configuration.Account.enable_totp},methods:{async resetMFA(){await v("/api/updateDashboardConfigurationItem",{section:"Account",key:"totp_verified",value:"false"},async s=>{await v("/api/updateDashboardConfigurationItem",{section:"Account",key:"enable_totp",value:"false"},e=>{e.status&&this.$router.push("/2FASetup")})})}}},qe={class:"d-flex align-items-center"},Qe={class:"form-check form-switch"},Je={for:"allowMFAKeysSwitch"};function Xe(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",null,[t("div",qe,[t("div",Qe,[b(t("input",{class:"form-check-input",type:"checkbox","onUpdate:modelValue":e[0]||(e[0]=a=>this.status=a),role:"switch",id:"allowMFAKeysSwitch"},null,512),[[L,this.status]]),t("label",Je,[this.status?(n(),x(o,{key:0,t:"Enabled"})):(n(),x(o,{key:1,t:"Disabled"}))])]),this.status?(n(),l("button",{key:0,class:"btn bg-warning-subtle text-warning-emphasis border-1 border-warning-subtle ms-auto rounded-3 shadow-sm",onClick:e[1]||(e[1]=a=>this.resetMFA())},[e[2]||(e[2]=t("i",{class:"bi bi-shield-lock-fill me-2"},null,-1)),this.store.Configuration.Account.totp_verified?(n(),x(o,{key:0,t:"Reset"})):(n(),x(o,{key:1,t:"Setup"})),e[3]||(e[3]=S(" MFA "))])):_("",!0)])])}const Ze=k(Oe,[["render",Xe]]),ts={name:"dashboardLanguage",components:{LocaleText:p},setup(){return{store:y()}},data(){return{languages:void 0}},mounted(){E("/api/locale/available",{},s=>{this.languages=s.data})},methods:{changeLanguage(s){v("/api/locale/update",{lang_id:s},e=>{e.status?(this.store.Configuration.Server.dashboard_language=s,this.store.Locale=e.data):this.store.newMessage("Server","WGDashboard language update failed","danger")})}},computed:{currentLanguage(){let s=this.store.Configuration.Server.dashboard_language;return this.languages.find(e=>e.lang_id===s)}}},es={class:"text-muted d-block mb-1"},ss={class:"d-flex gap-2"},as={class:"dropdown w-100"},is=["disabled"],os={key:1},ns={class:"dropdown-menu rounded-3 shadow",style:{"max-height":"500px","overflow-y":"scroll"}},ls=["onClick"],ds={class:"me-auto mb-0"},rs={class:"d-block",style:{"font-size":"0.8rem"}},us={key:0,class:"bi bi-check text-primary fs-5"};function cs(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",null,[t("small",es,[t("strong",null,[i(o,{t:"Language"})])]),t("div",ss,[t("div",as,[t("button",{class:"btn bg-primary-subtle text-primary-emphasis dropdown-toggle w-100 rounded-3",disabled:!this.languages,type:"button","data-bs-toggle":"dropdown","aria-expanded":"false"},[this.languages?(n(),l("span",os,D(g.currentLanguage?.lang_name_localized),1)):(n(),x(o,{key:0,t:"Loading..."}))],8,is),t("ul",ns,[(n(!0),l(C,null,V(this.languages,a=>(n(),l("li",null,[t("a",{class:"dropdown-item d-flex align-items-center",role:"button",onClick:r=>this.changeLanguage(a.lang_id)},[t("p",ds,[S(D(a.lang_name_localized)+" ",1),t("small",rs,D(a.lang_name),1)]),g.currentLanguage?.lang_id===a.lang_id?(n(),l("i",us)):_("",!0)],8,ls)]))),256))])])])])}const hs=k(ts,[["render",cs],["__scopeId","data-v-4e34593e"]]),ms={name:"dashboardIPPortInput",components:{LocaleText:p},setup(){return{store:y()}},data(){return{ipAddress:"",port:0,invalidFeedback:"",showInvalidFeedback:!1,isValid:!1,timeout:void 0,changed:!1,updating:!1}},mounted(){this.ipAddress=this.store.Configuration.Server.app_ip,this.port=this.store.Configuration.Server.app_port},methods:{async useValidation(s,e,c){this.changed&&(this.updating=!0,await v("/api/updateDashboardConfigurationItem",{section:"Server",key:e,value:c},h=>{h.status?(s.target.classList.add("is-valid"),this.showInvalidFeedback=!1,this.store.Configuration.Server[e]=c,clearTimeout(this.timeout),this.timeout=setTimeout(()=>{s.target.classList.remove("is-valid")},5e3)):(this.isValid=!1,this.showInvalidFeedback=!0,this.invalidFeedback=h.message),this.changed=!1,this.updating=!1}))}}},ps={class:"row g-2"},gs={class:"col-sm"},bs={class:"form-group"},_s={for:"input_dashboard_ip",class:"text-muted mb-1"},fs=["disabled"],vs={class:"invalid-feedback"},ys={class:"col-sm"},ws={class:"form-group"},$s={for:"input_dashboard_ip",class:"text-muted mb-1"},ks=["disabled"],xs={class:"invalid-feedback"},Ds={class:"px-2 py-1 text-warning-emphasis bg-warning-subtle border border-warning-subtle rounded-2 d-inline-block mb-2 mt-2"};function Ss(s,e,c,h,u,g){const o=m("LocaleText");return n(),l("div",null,[t("div",ps,[t("div",gs,[t("div",bs,[t("label",_s,[t("strong",null,[t("small",null,[i(o,{t:"IP Address / Hostname"})])])]),b(t("input",{type:"text",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),id:"input_dashboard_ip","onUpdate:modelValue":e[0]||(e[0]=a=>this.ipAddress=a),onKeydown:e[1]||(e[1]=a=>this.changed=!0),onBlur:e[2]||(e[2]=a=>g.useValidation(a,"app_ip",this.ipAddress)),disabled:this.updating},null,42,fs),[[f,this.ipAddress]]),t("div",vs,D(this.invalidFeedback),1)])]),t("div",ys,[t("div",ws,[t("label",$s,[t("strong",null,[t("small",null,[i(o,{t:"Listen Port"})])])]),b(t("input",{type:"number",class:$(["form-control",{"is-invalid":u.showInvalidFeedback,"is-valid":u.isValid}]),id:"input_dashboard_ip","onUpdate:modelValue":e[3]||(e[3]=a=>this.port=a),onKeydown:e[4]||(e[4]=a=>this.changed=!0),onBlur:e[5]||(e[5]=a=>g.useValidation(a,"app_port",this.port)),disabled:this.updating},null,42,ks),[[f,this.port]]),t("div",xs,D(this.invalidFeedback),1)])])]),t("div",Ds,[t("small",null,[e[6]||(e[6]=t("i",{class:"bi bi-exclamation-triangle-fill me-2"},null,-1)),i(o,{t:"Manual restart of WGDashboard is needed to apply changes on IP Address and Listen Port"})])])])}const Is=k(ms,[["render",Ss]]),Cs={class:"card rounded-3"},Ps={class:"card-header"},As={class:"my-2"},Ts={class:"card-body d-flex gap-2"},Vs={class:"list-group w-100"},Ks=["onClick"],Fs={__name:"dashboardSettingsWireguardConfigurationAutostart",setup(s){const e=y(),c=M(),h=T(e.Configuration.WireGuardConfiguration.autostart),u=z(()=>c.Configurations.map(a=>a.Name)),g=async()=>{await v("/api/updateDashboardConfigurationItem",{section:"WireGuardConfiguration",key:"autostart",value:h.value},async a=>{a.status?(e.newMessage("Server","Start up configurations saved","success"),h.value=a.data):e.newMessage("Server","Start up configurations failed to save","danger")})},o=a=>{h.value.includes(a)?h.value=h.value.filter(r=>r!==a):h.value.push(a),g()};return(a,r)=>(n(),l("div",Cs,[t("div",Ps,[t("h6",As,[i(p,{t:"Toggle When Start Up"})])]),t("div",Ts,[t("div",Vs,[(n(!0),l(C,null,V(u.value,d=>(n(),l("button",{type:"button",key:d,onClick:P=>o(d),class:"list-group-item list-group-item-action py-2 w-100 d-flex align-items-center"},[t("samp",null,D(d),1),t("i",{class:$(["ms-auto",[h.value.includes(d)?"bi-check-circle-fill":"bi-circle"]])},null,2)],8,Ks))),128))])])]))}},Ls=k(Fs,[["__scopeId","data-v-4aa2aed9"]]),Es={class:"card"},Ms={class:"card-header"},Us={class:"my-2 d-flex"},Ns={key:0,class:"text-success ms-auto"},Ws={class:"card-body d-flex flex-column gap-3"},Gs={class:"row gx-2 gy-2"},Rs={class:"col-12 col-lg-4"},Ys={class:"form-group"},Hs={for:"server",class:"text-muted mb-1"},Bs={class:"col-12 col-lg-4"},js={class:"form-group"},zs={for:"port",class:"text-muted mb-1"},Os={class:"col-12 col-lg-4"},qs={class:"form-group"},Qs={for:"encryption",class:"text-muted mb-1"},Js={value:"NOTLS"},Xs={class:"col-12 col-lg-4"},Zs={class:"form-group"},ta={for:"username",class:"text-muted mb-1"},ea={class:"col-12 col-lg-4"},sa={class:"form-group"},aa={for:"email_password",class:"text-muted mb-1"},ia={class:"col-12 col-lg-4"},oa={class:"form-group"},na={for:"send_from",class:"text-muted mb-1"},la={key:0},da={key:1},ra={class:"text-muted mb-1",for:"test_email"},ua={class:"fw-bold"},ca=["disabled"],ha=["disabled"],ma={key:0,class:"bi bi-send me-2"},pa={key:1,class:"spinner-border spinner-border-sm me-2"},ga={class:"text-muted mb-1",for:"email_template"},ba={class:"fw-bold"},_a={__name:"dashboardEmailSettings",setup(s){const e=y();O(()=>{g(),document.querySelectorAll("#emailAccount input, #emailAccount select, #email_template").forEach(a=>{a.addEventListener("change",async()=>{let r=a.attributes.getNamedItem("id").value;await v("/api/updateDashboardConfigurationItem",{section:"Email",key:r,value:a.value},d=>{d.status?(a.classList.remove("is-invalid"),a.classList.add("is-valid")):(a.classList.remove("is-valid"),a.classList.add("is-invalid")),g()})})})});const c=T(!1),h=T(""),u=T(!1),g=async()=>{await E("/api/email/ready",{},a=>{c.value=a.status})},o=async()=>{u.value=!0,await v("/api/email/send",{Receiver:h.value,Subject:"WGDashboard Testing Email",Body:"Test 1, 2, 3! Hello World :)"},a=>{a.status?e.newMessage("Server","Test email sent successfully!","success"):e.newMessage("Server",`Test email sent failed! Reason: ${a.message}`,"danger"),u.value=!1})};return(a,r)=>(n(),l("div",Es,[t("div",Ms,[t("h6",Us,[i(p,{t:"Email Account"}),c.value?(n(),l("span",Ns,[r[10]||(r[10]=t("i",{class:"bi bi-check-circle-fill me-2"},null,-1)),i(p,{t:"Ready"})])):_("",!0)])]),t("div",Ws,[t("form",{onSubmit:r[6]||(r[6]=d=>d.preventDefault(d)),id:"emailAccount"},[t("div",Gs,[t("div",Rs,[t("div",Ys,[t("label",Hs,[t("strong",null,[t("small",null,[i(p,{t:"Server"})])])]),b(t("input",{id:"server","onUpdate:modelValue":r[0]||(r[0]=d=>w(e).Configuration.Email.server=d),type:"text",class:"form-control"},null,512),[[f,w(e).Configuration.Email.server]])])]),t("div",Bs,[t("div",js,[t("label",zs,[t("strong",null,[t("small",null,[i(p,{t:"Port"})])])]),b(t("input",{id:"port","onUpdate:modelValue":r[1]||(r[1]=d=>w(e).Configuration.Email.port=d),type:"text",class:"form-control"},null,512),[[f,w(e).Configuration.Email.port]])])]),t("div",Os,[t("div",qs,[t("label",Qs,[t("strong",null,[t("small",null,[i(p,{t:"Encryption"})])])]),b(t("select",{class:"form-select","onUpdate:modelValue":r[2]||(r[2]=d=>w(e).Configuration.Email.encryption=d),id:"encryption"},[r[11]||(r[11]=t("option",{value:"STARTTLS"}," STARTTLS ",-1)),t("option",Js,[i(p,{t:"No Encryption"})])],512),[[q,w(e).Configuration.Email.encryption]])])]),t("div",Xs,[t("div",Zs,[t("label",ta,[t("strong",null,[t("small",null,[i(p,{t:"Username"})])])]),b(t("input",{id:"username","onUpdate:modelValue":r[3]||(r[3]=d=>w(e).Configuration.Email.username=d),type:"text",class:"form-control"},null,512),[[f,w(e).Configuration.Email.username]])])]),t("div",ea,[t("div",sa,[t("label",aa,[t("strong",null,[t("small",null,[i(p,{t:"Password"})])])]),b(t("input",{id:"email_password","onUpdate:modelValue":r[4]||(r[4]=d=>w(e).Configuration.Email.email_password=d),type:"password",class:"form-control"},null,512),[[f,w(e).Configuration.Email.email_password]])])]),t("div",ia,[t("div",oa,[t("label",na,[t("strong",null,[t("small",null,[i(p,{t:"Send From"})])])]),b(t("input",{id:"send_from","onUpdate:modelValue":r[5]||(r[5]=d=>w(e).Configuration.Email.send_from=d),type:"text",class:"form-control"},null,512),[[f,w(e).Configuration.Email.send_from]])])])])],32),c.value?(n(),l("hr",la)):_("",!0),c.value?(n(),l("div",da,[t("label",ra,[t("small",ua,[i(p,{t:"Send Test Email"})])]),t("form",{onSubmit:r[8]||(r[8]=d=>{d.preventDefault(),o()}),class:"input-group"},[b(t("input",{type:"email",class:"form-control rounded-start-3",id:"test_email",placeholder:"john@example.com","onUpdate:modelValue":r[7]||(r[7]=d=>h.value=d),disabled:u.value},null,8,ca),[[f,h.value]]),t("button",{class:"btn bg-primary-subtle text-primary-emphasis border-primary-subtle rounded-end-3",type:"submit",value:"Submit",disabled:h.value.length===0||u.value,id:"button-addon2"},[u.value?(n(),l("span",pa)):(n(),l("i",ma)),i(p,{t:u.value?"Sending...":"Send"},null,8,["t"])],8,ha)],32)])):_("",!0),r[12]||(r[12]=t("hr",null,null,-1)),t("div",null,[t("label",ga,[t("small",ba,[i(p,{t:"Email Body Template"})])]),b(t("textarea",{class:"form-control rounded-3 font-monospace","onUpdate:modelValue":r[9]||(r[9]=d=>w(e).Configuration.Email.email_template=d),id:"email_template",style:{"min-height":"400px"}},null,512),[[f,w(e).Configuration.Email.email_template]])])])]))}},fa={name:"settings",methods:{ipV46RegexCheck:ot},components:{DashboardEmailSettings:_a,DashboardSettingsWireguardConfigurationAutostart:Ls,DashboardIPPortInput:Is,DashboardLanguage:hs,LocaleText:p,AccountSettingsMFA:Ze,DashboardAPIKeys:ze,DashboardSettingsInputIPAddressAndPort:ue,DashboardTheme:Zt,DashboardSettingsInputWireguardConfigurationPath:Ot,AccountSettingsInputPassword:Tt,AccountSettingsInputUsername:ht,PeersDefaultSettingsInput:it},setup(){return{dashboardConfigurationStore:y()}},data(){return{activeTab:"WGDashboard",tabs:[{id:"WGDashboard",title:"WGDashboard Settings"},{id:"Peers",title:"Peers Settings"},{id:"WireGuardConfiguration",title:"WireGuard Configuration Settings"}]}}},va={class:"mt-md-5 mt-3 text-body mb-3"},ya={class:"container-md d-flex flex-column gap-4"},wa={class:"nav nav-pills nav-justified align-items-center gap-2"},$a={class:"nav-item"},ka=["onClick"],xa={class:"my-2"},Da={key:0,class:"d-flex gap-3 flex-column"},Sa={key:1,class:"d-flex gap-3 flex-column"},Ia={class:"card rounded-3"},Ca={class:"card-header"},Pa={class:"my-2"},Aa={class:"card-body"},Ta={key:2,class:"d-flex gap-3 flex-column"},Va={class:"card rounded-3"},Ka={class:"card-header"},Fa={class:"my-2"},La={class:"card-body"},Ea={class:"row g-2"},Ma={class:"col-sm"},Ua={class:"col-sm"},Na={class:"card"},Wa={class:"card-header"},Ga={class:"my-2"},Ra={class:"card-body"},Ya={class:"card"},Ha={class:"card-header"},Ba={class:"my-2"},ja={class:"card-body d-flex flex-column gap-3"},za={class:"card"},Oa={class:"card-header"},qa={class:"my-2"},Qa={class:"card-body"};function Ja(s,e,c,h,u,g){const o=m("LocaleText"),a=m("DashboardSettingsInputWireguardConfigurationPath"),r=m("DashboardSettingsWireguardConfigurationAutostart"),d=m("PeersDefaultSettingsInput"),P=m("DashboardTheme"),N=m("DashboardLanguage"),W=m("DashboardIPPortInput"),G=m("AccountSettingsInputUsername"),R=m("AccountSettingsInputPassword"),Y=m("AccountSettingsMFA"),H=m("DashboardAPIKeys"),B=m("DashboardEmailSettings");return n(),l("div",va,[t("div",ya,[t("div",null,[t("ul",wa,[(n(!0),l(C,null,V(this.tabs,K=>(n(),l("li",$a,[t("a",{class:$(["nav-link rounded-3",{active:this.activeTab===K.id}]),onClick:Xa=>this.activeTab=K.id,role:"button"},[t("h6",xa,[i(o,{t:K.title},null,8,["t"])])],10,ka)]))),256))]),e[1]||(e[1]=t("hr",null,null,-1)),t("div",null,[i(U,{name:"fade2",mode:"out-in"},{default:F(()=>[u.activeTab==="WireGuardConfiguration"?(n(),l("div",Da,[i(a,{targetData:"wg_conf_path",title:"Configurations Directory",warning:!0,"warning-text":"Remember to remove / at the end of your path. e.g /etc/wireguard"}),i(r)])):u.activeTab==="Peers"?(n(),l("div",Sa,[t("div",Ia,[t("div",Ca,[t("h6",Pa,[i(o,{t:"Peer Default Settings"})])]),t("div",Aa,[t("div",null,[i(d,{targetData:"peer_global_dns",title:"DNS"}),i(d,{targetData:"peer_endpoint_allowed_ip",title:"Endpoint Allowed IPs"}),i(d,{targetData:"peer_mtu",title:"MTU"}),i(d,{targetData:"peer_keep_alive",title:"Persistent Keepalive"}),i(d,{targetData:"remote_endpoint",title:"Peer Remote Endpoint",warning:!0,warningText:"This will be changed globally, and will be apply to all peer's QR code and configuration file."})])])])])):u.activeTab==="WGDashboard"?(n(),l("div",Ta,[t("div",Va,[t("div",Ka,[t("h6",Fa,[i(o,{t:"Appearance"})])]),t("div",La,[t("div",Ea,[t("div",Ma,[i(P)]),t("div",Ua,[i(N)])])])]),t("div",Na,[t("div",Wa,[t("h6",Ga,[i(o,{t:"Dashboard IP Address & Listen Port"})])]),t("div",Ra,[i(W)])]),t("div",Ya,[t("div",Ha,[t("h6",Ba,[i(o,{t:"Account Settings"})])]),t("div",ja,[t("div",null,[i(G,{targetData:"username",title:"Username"})]),e[0]||(e[0]=t("hr",null,null,-1)),t("div",null,[i(R,{targetData:"password"})])])]),t("div",za,[t("div",Oa,[t("h6",qa,[i(o,{t:"Multi-Factor Authentication (MFA)"})])]),t("div",Qa,[this.dashboardConfigurationStore.getActiveCrossServer()?_("",!0):(n(),x(Y,{key:0}))])]),i(H),i(B)])):_("",!0)]),_:1})])])])])}const ai=k(fa,[["render",Ja]]);export{ai as default}; diff --git a/src/static/app/dist/assets/setup-BzCz1W8G.js b/src/static/app/dist/assets/setup-T1V4VgjP.js similarity index 96% rename from src/static/app/dist/assets/setup-BzCz1W8G.js rename to src/static/app/dist/assets/setup-T1V4VgjP.js index 7ee5a9f..487d2ac 100644 --- a/src/static/app/dist/assets/setup-BzCz1W8G.js +++ b/src/static/app/dist/assets/setup-T1V4VgjP.js @@ -1 +1 @@ -import{_ as u,D as m,A as p,c as r,b as e,d as o,f as c,t as h,e as f,m as l,y as d,a as i,k as w}from"./index-CfPziasH.js";import{L as g}from"./localeText-CyxQ0Kz3.js";const b={name:"setup",components:{LocaleText:g},setup(){return{store:m()}},data(){return{setup:{username:"",newPassword:"",repeatNewPassword:"",enable_totp:!0},loading:!1,errorMessage:"",done:!1}},computed:{goodToSubmit(){return this.setup.username&&this.setup.newPassword.length>=8&&this.setup.repeatNewPassword.length>=8&&this.setup.newPassword===this.setup.repeatNewPassword}},methods:{submit(){this.loading=!0,p("/api/Welcome_Finish",this.setup,n=>{n.status?(this.done=!0,this.$router.push("/2FASetup")):(document.querySelectorAll("#createAccount input").forEach(s=>s.classList.add("is-invalid")),this.errorMessage=n.message,document.querySelector(".login-container-fluid").scrollTo({top:0,left:0,behavior:"smooth"})),this.loading=!1})}}},_=["data-bs-theme"],x={class:"m-auto text-body",style:{width:"500px"}},v={class:"dashboardLogo display-4"},y={class:"mb-5"},P={key:0,class:"alert alert-danger"},N={class:"d-flex flex-column gap-3"},k={id:"createAccount",class:"d-flex flex-column gap-2"},S={class:"form-group text-body"},T={for:"username",class:"mb-1 text-muted"},C={class:"form-group text-body"},L={for:"password",class:"mb-1 text-muted"},V={class:"form-group text-body"},A={for:"confirmPassword",class:"mb-1 text-muted"},$=["disabled"],q={key:0,class:"d-flex align-items-center w-100"},M={key:1,class:"d-flex align-items-center w-100"};function B(n,s,D,E,U,F){const t=w("LocaleText");return i(),r("div",{class:"container-fluid login-container-fluid d-flex main pt-5 overflow-scroll","data-bs-theme":this.store.Configuration.Server.dashboard_theme},[e("div",x,[e("span",v,[o(t,{t:"Nice to meet you!"})]),e("p",y,[o(t,{t:"Please fill in the following fields to finish setup"}),s[4]||(s[4]=c(" 😊"))]),e("div",null,[e("h3",null,[o(t,{t:"Create an account"})]),this.errorMessage?(i(),r("div",P,h(this.errorMessage),1)):f("",!0),e("div",N,[e("form",k,[e("div",S,[e("label",T,[e("small",null,[o(t,{t:"Enter an username you like"})])]),l(e("input",{type:"text",autocomplete:"username","onUpdate:modelValue":s[0]||(s[0]=a=>this.setup.username=a),class:"form-control",id:"username",name:"username",required:""},null,512),[[d,this.setup.username]])]),e("div",C,[e("label",L,[e("small",null,[o(t,{t:"Enter a password"}),e("code",null,[o(t,{t:"(At least 8 characters and make sure is strong enough!)"})])])]),l(e("input",{type:"password",autocomplete:"new-password","onUpdate:modelValue":s[1]||(s[1]=a=>this.setup.newPassword=a),class:"form-control",id:"password",name:"password",required:""},null,512),[[d,this.setup.newPassword]])]),e("div",V,[e("label",A,[e("small",null,[o(t,{t:"Confirm password"})])]),l(e("input",{type:"password",autocomplete:"confirm-new-password","onUpdate:modelValue":s[2]||(s[2]=a=>this.setup.repeatNewPassword=a),class:"form-control",id:"confirmPassword",name:"confirmPassword",required:""},null,512),[[d,this.setup.repeatNewPassword]])])]),e("button",{class:"btn btn-dark btn-lg mb-5 d-flex btn-brand shadow align-items-center",ref:"signInBtn",disabled:!this.goodToSubmit||this.loading||this.done,onClick:s[3]||(s[3]=a=>this.submit())},[!this.loading&&!this.done?(i(),r("span",q,[o(t,{t:"Next"}),s[5]||(s[5]=e("i",{class:"bi bi-chevron-right ms-auto"},null,-1))])):(i(),r("span",M,[o(t,{t:"Saving..."}),s[6]||(s[6]=e("span",{class:"spinner-border ms-auto spinner-border-sm",role:"status"},[e("span",{class:"visually-hidden"},"Loading...")],-1))]))],8,$)])])])],8,_)}const j=u(b,[["render",B]]);export{j as default}; +import{_ as u,D as m,A as p,c as r,b as e,d as o,f as c,t as h,e as f,m as l,y as d,a as i,k as w}from"./index-AzYVPyhh.js";import{L as g}from"./localeText-qJNpKS91.js";const b={name:"setup",components:{LocaleText:g},setup(){return{store:m()}},data(){return{setup:{username:"",newPassword:"",repeatNewPassword:"",enable_totp:!0},loading:!1,errorMessage:"",done:!1}},computed:{goodToSubmit(){return this.setup.username&&this.setup.newPassword.length>=8&&this.setup.repeatNewPassword.length>=8&&this.setup.newPassword===this.setup.repeatNewPassword}},methods:{submit(){this.loading=!0,p("/api/Welcome_Finish",this.setup,n=>{n.status?(this.done=!0,this.$router.push("/2FASetup")):(document.querySelectorAll("#createAccount input").forEach(s=>s.classList.add("is-invalid")),this.errorMessage=n.message,document.querySelector(".login-container-fluid").scrollTo({top:0,left:0,behavior:"smooth"})),this.loading=!1})}}},_=["data-bs-theme"],x={class:"m-auto text-body",style:{width:"500px"}},v={class:"dashboardLogo display-4"},y={class:"mb-5"},P={key:0,class:"alert alert-danger"},N={class:"d-flex flex-column gap-3"},k={id:"createAccount",class:"d-flex flex-column gap-2"},S={class:"form-group text-body"},T={for:"username",class:"mb-1 text-muted"},C={class:"form-group text-body"},L={for:"password",class:"mb-1 text-muted"},V={class:"form-group text-body"},A={for:"confirmPassword",class:"mb-1 text-muted"},$=["disabled"],q={key:0,class:"d-flex align-items-center w-100"},M={key:1,class:"d-flex align-items-center w-100"};function B(n,s,D,E,U,F){const t=w("LocaleText");return i(),r("div",{class:"container-fluid login-container-fluid d-flex main pt-5 overflow-scroll","data-bs-theme":this.store.Configuration.Server.dashboard_theme},[e("div",x,[e("span",v,[o(t,{t:"Nice to meet you!"})]),e("p",y,[o(t,{t:"Please fill in the following fields to finish setup"}),s[4]||(s[4]=c(" 😊"))]),e("div",null,[e("h3",null,[o(t,{t:"Create an account"})]),this.errorMessage?(i(),r("div",P,h(this.errorMessage),1)):f("",!0),e("div",N,[e("form",k,[e("div",S,[e("label",T,[e("small",null,[o(t,{t:"Enter an username you like"})])]),l(e("input",{type:"text",autocomplete:"username","onUpdate:modelValue":s[0]||(s[0]=a=>this.setup.username=a),class:"form-control",id:"username",name:"username",required:""},null,512),[[d,this.setup.username]])]),e("div",C,[e("label",L,[e("small",null,[o(t,{t:"Enter a password"}),e("code",null,[o(t,{t:"(At least 8 characters and make sure is strong enough!)"})])])]),l(e("input",{type:"password",autocomplete:"new-password","onUpdate:modelValue":s[1]||(s[1]=a=>this.setup.newPassword=a),class:"form-control",id:"password",name:"password",required:""},null,512),[[d,this.setup.newPassword]])]),e("div",V,[e("label",A,[e("small",null,[o(t,{t:"Confirm password"})])]),l(e("input",{type:"password",autocomplete:"confirm-new-password","onUpdate:modelValue":s[2]||(s[2]=a=>this.setup.repeatNewPassword=a),class:"form-control",id:"confirmPassword",name:"confirmPassword",required:""},null,512),[[d,this.setup.repeatNewPassword]])])]),e("button",{class:"btn btn-dark btn-lg mb-5 d-flex btn-brand shadow align-items-center",ref:"signInBtn",disabled:!this.goodToSubmit||this.loading||this.done,onClick:s[3]||(s[3]=a=>this.submit())},[!this.loading&&!this.done?(i(),r("span",q,[o(t,{t:"Next"}),s[5]||(s[5]=e("i",{class:"bi bi-chevron-right ms-auto"},null,-1))])):(i(),r("span",M,[o(t,{t:"Saving..."}),s[6]||(s[6]=e("span",{class:"spinner-border ms-auto spinner-border-sm",role:"status"},[e("span",{class:"visually-hidden"},"Loading...")],-1))]))],8,$)])])])],8,_)}const j=u(b,[["render",B]]);export{j as default}; diff --git a/src/static/app/dist/assets/share-QVhX-X9Q.js b/src/static/app/dist/assets/share-Q69ZSAC1.js similarity index 95% rename from src/static/app/dist/assets/share-QVhX-X9Q.js rename to src/static/app/dist/assets/share-Q69ZSAC1.js index 42248ca..656f1ae 100644 --- a/src/static/app/dist/assets/share-QVhX-X9Q.js +++ b/src/static/app/dist/assets/share-Q69ZSAC1.js @@ -1 +1 @@ -import{_,r,D as p,g as u,c as m,b as t,d as c,J as h,a as f,k as b}from"./index-CfPziasH.js";import{b as v}from"./browser-CjSdxGTc.js";import{L as y}from"./localeText-CyxQ0Kz3.js";const g={name:"share",components:{LocaleText:y},async setup(){const o=h(),e=r(!1),i=p(),n=r(""),s=r(void 0),l=r(new Blob);await u("/api/getDashboardTheme",{},d=>{n.value=d.data});const a=o.query.ShareID;return a===void 0||a.length===0?(s.value=void 0,e.value=!0):await u("/api/sharePeer/get",{ShareID:a},d=>{d.status?(s.value=d.data,l.value=new Blob([s.value.file],{type:"text/plain"})):s.value=void 0,e.value=!0}),{store:i,theme:n,peerConfiguration:s,blob:l}},mounted(){this.peerConfiguration&&v.toCanvas(document.querySelector("#qrcode"),this.peerConfiguration.file,o=>{o&&console.error(o)})},methods:{download(){const o=new Blob([this.peerConfiguration.file],{type:"text/plain"}),e=URL.createObjectURL(o),i=`${this.peerConfiguration.fileName}.conf`,n=document.createElement("a");n.href=e,n.download=i,n.click()}},computed:{getBlob(){return URL.createObjectURL(this.blob)}}},w=["data-bs-theme"],x={class:"m-auto text-body",style:{width:"500px"}},C={key:0,class:"text-center position-relative",style:{}},U={class:"position-absolute w-100 h-100 top-0 start-0 d-flex animate__animated animate__fadeInUp",style:{"animation-delay":"0.1s"}},I={class:"m-auto"},L={key:1,class:"d-flex align-items-center flex-column gap-3"},k={class:"h1 dashboardLogo text-center animate__animated animate__fadeInUp"},B={id:"qrcode",class:"rounded-3 shadow animate__animated animate__fadeInUp mb-3",ref:"qrcode"},D={class:"text-muted animate__animated animate__fadeInUp mb-1",style:{"animation-delay":"0.2s"}},R=["download","href"];function q(o,e,i,n,s,l){const a=b("LocaleText");return f(),m("div",{class:"container-fluid login-container-fluid d-flex main pt-5 overflow-scroll","data-bs-theme":this.theme},[t("div",x,[this.peerConfiguration?(f(),m("div",L,[t("div",k,[e[1]||(e[1]=t("h6",null,"WGDashboard",-1)),c(a,{t:"Scan QR Code with the WireGuard App to add peer"})]),t("canvas",B,null,512),t("p",D,[c(a,{t:"or click the button below to download the "}),e[2]||(e[2]=t("samp",null,".conf",-1)),c(a,{t:" file"})]),t("a",{download:this.peerConfiguration.fileName+".conf",href:l.getBlob,class:"btn btn-lg bg-primary-subtle text-primary-emphasis border-1 border-primary-subtle animate__animated animate__fadeInUp shadow-sm",style:{"animation-delay":"0.25s"}},e[3]||(e[3]=[t("i",{class:"bi bi-download"},null,-1)]),8,R)])):(f(),m("div",C,[e[0]||(e[0]=t("div",{class:"animate__animated animate__fadeInUp"},[t("h1",{style:{"font-size":"20rem",filter:"blur(1rem)","animation-duration":"7s"},class:"animate__animated animate__flash animate__infinite"},[t("i",{class:"bi bi-file-binary"})])],-1)),t("div",U,[t("h3",I,[c(a,{t:"Oh no... This link is either expired or invalid."})])])]))])],8,w)}const N=_(g,[["render",q],["__scopeId","data-v-1b44aacd"]]);export{N as default}; +import{_,r,D as p,g as u,c as m,b as t,d as c,J as h,a as f,k as b}from"./index-AzYVPyhh.js";import{b as v}from"./browser-CjSdxGTc.js";import{L as y}from"./localeText-qJNpKS91.js";const g={name:"share",components:{LocaleText:y},async setup(){const o=h(),e=r(!1),i=p(),n=r(""),s=r(void 0),l=r(new Blob);await u("/api/getDashboardTheme",{},d=>{n.value=d.data});const a=o.query.ShareID;return a===void 0||a.length===0?(s.value=void 0,e.value=!0):await u("/api/sharePeer/get",{ShareID:a},d=>{d.status?(s.value=d.data,l.value=new Blob([s.value.file],{type:"text/plain"})):s.value=void 0,e.value=!0}),{store:i,theme:n,peerConfiguration:s,blob:l}},mounted(){this.peerConfiguration&&v.toCanvas(document.querySelector("#qrcode"),this.peerConfiguration.file,o=>{o&&console.error(o)})},methods:{download(){const o=new Blob([this.peerConfiguration.file],{type:"text/plain"}),e=URL.createObjectURL(o),i=`${this.peerConfiguration.fileName}.conf`,n=document.createElement("a");n.href=e,n.download=i,n.click()}},computed:{getBlob(){return URL.createObjectURL(this.blob)}}},w=["data-bs-theme"],x={class:"m-auto text-body",style:{width:"500px"}},C={key:0,class:"text-center position-relative",style:{}},U={class:"position-absolute w-100 h-100 top-0 start-0 d-flex animate__animated animate__fadeInUp",style:{"animation-delay":"0.1s"}},I={class:"m-auto"},L={key:1,class:"d-flex align-items-center flex-column gap-3"},k={class:"h1 dashboardLogo text-center animate__animated animate__fadeInUp"},B={id:"qrcode",class:"rounded-3 shadow animate__animated animate__fadeInUp mb-3",ref:"qrcode"},D={class:"text-muted animate__animated animate__fadeInUp mb-1",style:{"animation-delay":"0.2s"}},R=["download","href"];function q(o,e,i,n,s,l){const a=b("LocaleText");return f(),m("div",{class:"container-fluid login-container-fluid d-flex main pt-5 overflow-scroll","data-bs-theme":this.theme},[t("div",x,[this.peerConfiguration?(f(),m("div",L,[t("div",k,[e[1]||(e[1]=t("h6",null,"WGDashboard",-1)),c(a,{t:"Scan QR Code with the WireGuard App to add peer"})]),t("canvas",B,null,512),t("p",D,[c(a,{t:"or click the button below to download the "}),e[2]||(e[2]=t("samp",null,".conf",-1)),c(a,{t:" file"})]),t("a",{download:this.peerConfiguration.fileName+".conf",href:l.getBlob,class:"btn btn-lg bg-primary-subtle text-primary-emphasis border-1 border-primary-subtle animate__animated animate__fadeInUp shadow-sm",style:{"animation-delay":"0.25s"}},e[3]||(e[3]=[t("i",{class:"bi bi-download"},null,-1)]),8,R)])):(f(),m("div",C,[e[0]||(e[0]=t("div",{class:"animate__animated animate__fadeInUp"},[t("h1",{style:{"font-size":"20rem",filter:"blur(1rem)","animation-duration":"7s"},class:"animate__animated animate__flash animate__infinite"},[t("i",{class:"bi bi-file-binary"})])],-1)),t("div",U,[t("h3",I,[c(a,{t:"Oh no... This link is either expired or invalid."})])])]))])],8,w)}const N=_(g,[["render",q],["__scopeId","data-v-1b44aacd"]]);export{N as default}; diff --git a/src/static/app/dist/assets/signin-BDhImFq0.js b/src/static/app/dist/assets/signin-JVg9SMDM.js similarity index 98% rename from src/static/app/dist/assets/signin-BDhImFq0.js rename to src/static/app/dist/assets/signin-JVg9SMDM.js index 02ac464..453afb3 100644 --- a/src/static/app/dist/assets/signin-BDhImFq0.js +++ b/src/static/app/dist/assets/signin-JVg9SMDM.js @@ -1 +1 @@ -import{_ as g,G as m,a as i,c as n,b as t,m as u,y as h,n as w,t as k,D as S,d as l,F as T,h as C,i as _,e as $,k as f,$ as E,g as y,A as M,v as V,f as A,w as D,T as R}from"./index-CfPziasH.js";import{M as P}from"./message-C4Yp0lwZ.js";import{d as x}from"./dayjs.min-C4BEB1lt.js";import{L}from"./localeText-CyxQ0Kz3.js";const U={name:"RemoteServer",props:{server:Object},data(){return{active:!1,startTime:void 0,endTime:void 0,errorMsg:"",refreshing:!1}},methods:{async handshake(){this.active=!1,this.server.host&&this.server.apiKey&&(this.refreshing=!0,this.startTime=void 0,this.endTime=void 0,this.startTime=x(),await fetch(`${this.server.host}/api/handshake`,{headers:{"content-type":"application/json","wg-dashboard-apikey":this.server.apiKey},method:"GET",signal:AbortSignal.timeout(5e3)}).then(s=>{if(s.status===200)return s.json();throw new Error(s.statusText)}).then(()=>{this.endTime=x(),this.active=!0}).catch(s=>{this.active=!1,this.errorMsg=s}),this.refreshing=!1)},async connect(){await fetch(`${this.server.host}/api/authenticate`,{headers:{"content-type":"application/json","wg-dashboard-apikey":this.server.apiKey},body:JSON.stringify({host:window.location.hostname}),method:"POST",signal:AbortSignal.timeout(5e3)}).then(s=>s.json()).then(s=>{this.$emit("setActiveServer"),this.$router.push("/")})}},mounted(){this.handshake()},computed:{getHandshakeTime(){return this.startTime&&this.endTime?`${x().subtract(this.startTime).millisecond()}ms`:this.refreshing?m("Pinging..."):this.errorMsg?this.errorMsg:"N/A"}}},q={class:"card rounded-3"},B={class:"card-body"},O={class:"d-flex gap-3 w-100 remoteServerContainer"},j={class:"d-flex gap-3 align-items-center flex-grow-1"},G={class:"d-flex gap-3 align-items-center flex-grow-1"},N={class:"d-flex gap-2 button-group"},K={class:"card-footer gap-2 d-flex align-items-center"},W={key:0,class:"spin ms-auto text-primary-emphasis"};function z(s,e,d,c,a,p){return i(),n("div",q,[t("div",B,[t("div",O,[t("div",j,[e[7]||(e[7]=t("i",{class:"bi bi-server"},null,-1)),u(t("input",{class:"form-control form-control-sm",onBlur:e[0]||(e[0]=o=>this.handshake()),"onUpdate:modelValue":e[1]||(e[1]=o=>this.server.host=o),type:"url"},null,544),[[h,this.server.host]])]),t("div",G,[e[8]||(e[8]=t("i",{class:"bi bi-key-fill"},null,-1)),u(t("input",{class:"form-control form-control-sm",onBlur:e[2]||(e[2]=o=>this.handshake()),"onUpdate:modelValue":e[3]||(e[3]=o=>this.server.apiKey=o),type:"text"},null,544),[[h,this.server.apiKey]])]),t("div",N,[t("button",{onClick:e[4]||(e[4]=o=>this.$emit("delete")),class:"ms-auto btn btn-sm bg-danger-subtle text-danger-emphasis border-1 border-danger-subtle"},e[9]||(e[9]=[t("i",{class:"bi bi-trash"},null,-1)])),t("button",{onClick:e[5]||(e[5]=o=>this.connect()),class:w([{disabled:!this.active},"ms-auto btn btn-sm bg-success-subtle text-success-emphasis border-1 border-success-subtle"])},e[10]||(e[10]=[t("i",{class:"bi bi-arrow-right-circle"},null,-1)]),2)])])]),t("div",K,[t("span",{class:w(["dot ms-0 me-2",[this.active?"active":"inactive"]])},null,2),t("small",null,k(this.getHandshakeTime),1),this.refreshing?(i(),n("div",W,e[11]||(e[11]=[t("i",{class:"bi bi-arrow-clockwise"},null,-1)]))):(i(),n("a",{key:1,role:"button",onClick:e[6]||(e[6]=o=>this.handshake()),class:"text-primary-emphasis text-decoration-none ms-auto disabled"},e[12]||(e[12]=[t("i",{class:"bi bi-arrow-clockwise me"},null,-1)])))])])}const F=g(U,[["render",z],["__scopeId","data-v-ed7817c7"]]),H={name:"RemoteServerList",setup(){return{store:S()}},components:{LocaleText:L,RemoteServer:F}},J={class:"w-100 mt-3"},Z={class:"d-flex align-items-center mb-3"},Q={class:"mb-0"},X={class:"w-100 d-flex gap-3 flex-column p-3 border border-1 border-secondary-subtle rounded-3",style:{height:"400px","overflow-y":"scroll"}},Y={key:0,class:"text-muted m-auto"};function ee(s,e,d,c,a,p){const o=f("LocaleText"),v=f("RemoteServer");return i(),n("div",J,[t("div",Z,[t("h5",Q,[l(o,{t:"Server List"})]),t("button",{onClick:e[0]||(e[0]=b=>this.store.addCrossServerConfiguration()),class:"btn bg-primary-subtle text-primary-emphasis border-1 border-primary-subtle shadow-sm ms-auto"},[e[1]||(e[1]=t("i",{class:"bi bi-plus-circle-fill me-2"},null,-1)),l(o,{t:"Server"})])]),t("div",X,[(i(!0),n(T,null,C(this.store.CrossServerConfiguration.ServerList,(b,r)=>(i(),_(v,{onSetActiveServer:I=>this.store.setActiveCrossServer(r),onDelete:I=>this.store.deleteCrossServerConfiguration(r),key:r,server:b},null,8,["onSetActiveServer","onDelete","server"]))),128)),Object.keys(this.store.CrossServerConfiguration.ServerList).length===0?(i(),n("h6",Y,[l(o,{t:"Click"}),e[2]||(e[2]=t("i",{class:"bi bi-plus-circle-fill mx-1"},null,-1)),l(o,{t:"to add your server"})])):$("",!0)])])}const te=g(H,[["render",ee]]),se={name:"signInInput",methods:{GetLocale:m},props:{id:"",data:"",type:"",placeholder:""},computed:{getLocaleText(){return m(this.placeholder)}}},oe=["type","id","name","placeholder"];function ie(s,e,d,c,a,p){return u((i(),n("input",{type:d.type,"onUpdate:modelValue":e[0]||(e[0]=o=>this.data[this.id]=o),class:"form-control rounded-3",id:this.id,name:this.id,autocomplete:"on",placeholder:this.getLocaleText,required:""},null,8,oe)),[[E,this.data[this.id]]])}const re=g(se,[["render",ie]]),ne={name:"signInTOTP",methods:{GetLocale:m},props:{data:""},computed:{getLocaleText(){return m("OTP from your authenticator")}}},ae=["placeholder"];function le(s,e,d,c,a,p){return u((i(),n("input",{class:"form-control totp",required:"",id:"totp",maxlength:"6",type:"text",inputmode:"numeric",autocomplete:"one-time-code",placeholder:this.getLocaleText,"onUpdate:modelValue":e[0]||(e[0]=o=>this.data.totp=o)},null,8,ae)),[[h,this.data.totp]])}const de=g(ne,[["render",le]]),ue={name:"signin",components:{SignInTOTP:de,SignInInput:re,LocaleText:L,RemoteServerList:te,Message:P},async setup(){const s=S();let e="dark",d=!1,c;return s.IsElectronApp||await Promise.all([y("/api/getDashboardTheme",{},a=>{e=a.data}),y("/api/isTotpEnabled",{},a=>{d=a.data}),y("/api/getDashboardVersion",{},a=>{c=a.data})]),s.removeActiveCrossServer(),{store:s,theme:e,totpEnabled:d,version:c}},data(){return{data:{username:"",password:"",totp:""},loginError:!1,loginErrorMessage:"",loading:!1}},computed:{getMessages(){return this.store.Messages.filter(s=>s.show)},applyLocale(s){return m(s)},formValid(){return this.data.username&&this.data.password&&(this.totpEnabled&&this.data.totp||!this.totpEnabled)}},methods:{GetLocale:m,async auth(){this.formValid?(this.loading=!0,await M("/api/authenticate",this.data,s=>{s.status?(this.loginError=!1,this.$refs.signInBtn.classList.add("signedIn"),s.message?this.$router.push("/welcome"):this.store.Redirect!==void 0?this.$router.push(this.store.Redirect):this.$router.push("/")):(this.store.newMessage("Server",s.message,"danger"),document.querySelectorAll("input[required]").forEach(e=>{e.classList.remove("is-valid"),e.classList.add("is-invalid")}),this.loading=!1)})):document.querySelectorAll("input[required]").forEach(s=>{s.value.length===0?(s.classList.remove("is-valid"),s.classList.add("is-invalid")):(s.classList.remove("is-invalid"),s.classList.add("is-valid"))})}}},ce=["data-bs-theme"],me={class:"login-box m-auto"},he={class:"m-auto signInContainer",style:{width:"700px"}},pe={class:"mb-0 text-body"},fe={class:"form-floating mb-2"},ge=["disabled"],be={for:"floatingInput",class:"d-flex"},ve={class:"form-floating mb-2"},ye=["disabled"],xe={for:"floatingInput",class:"d-flex"},_e={key:0,class:"form-floating mb-2"},$e=["disabled"],we={for:"floatingInput",class:"d-flex"},ke=["disabled"],Se={key:0,class:"d-flex w-100"},Te={key:1,class:"d-flex w-100 align-items-center"},Ce={key:2,class:"d-flex mt-3"},Le={class:"form-check form-switch ms-auto"},Ie=["disabled"],Ee={class:"form-check-label",for:"flexSwitchCheckChecked"},Me={class:"text-muted pb-3 d-block w-100 text-center mt-3"},Ve={class:"messageCentre text-body position-absolute d-flex"};function Ae(s,e,d,c,a,p){const o=f("LocaleText"),v=f("RemoteServerList"),b=f("Message");return i(),n("div",{class:"container-fluid login-container-fluid d-flex main flex-column py-4 text-body h-100",style:{"overflow-y":"scroll"},"data-bs-theme":this.theme},[t("div",me,[t("div",he,[t("h4",pe,[l(o,{t:"Welcome to"})]),e[10]||(e[10]=t("span",{class:"dashboardLogo display-3"},[t("strong",null,"WGDashboard")],-1)),this.store.CrossServerConfiguration.Enable?(i(),_(v,{key:1})):(i(),n("form",{key:0,onSubmit:e[3]||(e[3]=r=>{r.preventDefault(),this.auth()}),class:"mt-3"},[t("div",fe,[u(t("input",{type:"text",required:"",disabled:a.loading,"onUpdate:modelValue":e[0]||(e[0]=r=>this.data.username=r),name:"username",autocomplete:"username",autofocus:"",class:"form-control rounded-3",id:"username",placeholder:"Username"},null,8,ge),[[h,this.data.username]]),t("label",be,[e[5]||(e[5]=t("i",{class:"bi bi-person-circle me-2"},null,-1)),l(o,{t:"Username"})])]),t("div",ve,[u(t("input",{type:"password",required:"",disabled:a.loading,autocomplete:"current-password","onUpdate:modelValue":e[1]||(e[1]=r=>this.data.password=r),class:"form-control rounded-3",id:"password",placeholder:"Password"},null,8,ye),[[h,this.data.password]]),t("label",xe,[e[6]||(e[6]=t("i",{class:"bi bi-key-fill me-2"},null,-1)),l(o,{t:"Password"})])]),this.totpEnabled?(i(),n("div",_e,[u(t("input",{type:"text",id:"totp",required:"",disabled:a.loading,placeholder:"totp","onUpdate:modelValue":e[2]||(e[2]=r=>this.data.totp=r),class:"form-control rounded-3",maxlength:"6",inputmode:"numeric",autocomplete:"one-time-code"},null,8,$e),[[h,this.data.totp]]),t("label",we,[e[7]||(e[7]=t("i",{class:"bi bi-lock-fill me-2"},null,-1)),l(o,{t:"OTP from your authenticator"})])])):$("",!0),t("button",{class:"btn btn-lg btn-dark ms-auto mt-5 w-100 d-flex btn-brand signInBtn rounded-3",disabled:this.loading||!this.formValid,ref:"signInBtn"},[this.loading?(i(),n("span",Te,[l(o,{t:"Signing In..."}),e[9]||(e[9]=t("span",{class:"spinner-border ms-auto spinner-border-sm",role:"status"},null,-1))])):(i(),n("span",Se,[l(o,{t:"Sign In"}),e[8]||(e[8]=t("i",{class:"ms-auto bi bi-chevron-right"},null,-1))]))],8,ke)],32)),this.store.IsElectronApp?$("",!0):(i(),n("div",Ce,[t("div",Le,[u(t("input",{"onUpdate:modelValue":e[4]||(e[4]=r=>this.store.CrossServerConfiguration.Enable=r),disabled:a.loading,class:"form-check-input",type:"checkbox",role:"switch",id:"flexSwitchCheckChecked"},null,8,Ie),[[V,this.store.CrossServerConfiguration.Enable]]),t("label",Ee,[l(o,{t:"Access Remote Server"})])])]))])]),t("small",Me,[A(" WGDashboard "+k(this.version)+" | Developed with ❤️ by ",1),e[11]||(e[11]=t("a",{href:"https://github.com/donaldzou",target:"_blank"},[t("strong",null,"Donald Zou")],-1))]),t("div",Ve,[l(R,{name:"message",tag:"div",class:"position-relative flex-sm-grow-0 flex-grow-1 d-flex align-items-end ms-sm-auto flex-column gap-2"},{default:D(()=>[(i(!0),n(T,null,C(p.getMessages.slice().reverse(),r=>(i(),_(b,{message:r,key:r.id},null,8,["message"]))),128))]),_:1})])],8,ce)}const qe=g(ue,[["render",Ae],["__scopeId","data-v-80e20da4"]]);export{qe as default}; +import{_ as g,G as m,a as i,c as n,b as t,m as u,y as h,n as w,t as k,D as S,d as l,F as T,h as C,i as _,e as $,k as f,$ as E,g as y,A as M,v as V,f as A,w as D,T as R}from"./index-AzYVPyhh.js";import{M as P}from"./message-CTPyyUOY.js";import{d as x}from"./dayjs.min-DO3nadR-.js";import{L}from"./localeText-qJNpKS91.js";const U={name:"RemoteServer",props:{server:Object},data(){return{active:!1,startTime:void 0,endTime:void 0,errorMsg:"",refreshing:!1}},methods:{async handshake(){this.active=!1,this.server.host&&this.server.apiKey&&(this.refreshing=!0,this.startTime=void 0,this.endTime=void 0,this.startTime=x(),await fetch(`${this.server.host}/api/handshake`,{headers:{"content-type":"application/json","wg-dashboard-apikey":this.server.apiKey},method:"GET",signal:AbortSignal.timeout(5e3)}).then(s=>{if(s.status===200)return s.json();throw new Error(s.statusText)}).then(()=>{this.endTime=x(),this.active=!0}).catch(s=>{this.active=!1,this.errorMsg=s}),this.refreshing=!1)},async connect(){await fetch(`${this.server.host}/api/authenticate`,{headers:{"content-type":"application/json","wg-dashboard-apikey":this.server.apiKey},body:JSON.stringify({host:window.location.hostname}),method:"POST",signal:AbortSignal.timeout(5e3)}).then(s=>s.json()).then(s=>{this.$emit("setActiveServer"),this.$router.push("/")})}},mounted(){this.handshake()},computed:{getHandshakeTime(){return this.startTime&&this.endTime?`${x().subtract(this.startTime).millisecond()}ms`:this.refreshing?m("Pinging..."):this.errorMsg?this.errorMsg:"N/A"}}},q={class:"card rounded-3"},B={class:"card-body"},O={class:"d-flex gap-3 w-100 remoteServerContainer"},j={class:"d-flex gap-3 align-items-center flex-grow-1"},G={class:"d-flex gap-3 align-items-center flex-grow-1"},N={class:"d-flex gap-2 button-group"},K={class:"card-footer gap-2 d-flex align-items-center"},W={key:0,class:"spin ms-auto text-primary-emphasis"};function z(s,e,d,c,a,p){return i(),n("div",q,[t("div",B,[t("div",O,[t("div",j,[e[7]||(e[7]=t("i",{class:"bi bi-server"},null,-1)),u(t("input",{class:"form-control form-control-sm",onBlur:e[0]||(e[0]=o=>this.handshake()),"onUpdate:modelValue":e[1]||(e[1]=o=>this.server.host=o),type:"url"},null,544),[[h,this.server.host]])]),t("div",G,[e[8]||(e[8]=t("i",{class:"bi bi-key-fill"},null,-1)),u(t("input",{class:"form-control form-control-sm",onBlur:e[2]||(e[2]=o=>this.handshake()),"onUpdate:modelValue":e[3]||(e[3]=o=>this.server.apiKey=o),type:"text"},null,544),[[h,this.server.apiKey]])]),t("div",N,[t("button",{onClick:e[4]||(e[4]=o=>this.$emit("delete")),class:"ms-auto btn btn-sm bg-danger-subtle text-danger-emphasis border-1 border-danger-subtle"},e[9]||(e[9]=[t("i",{class:"bi bi-trash"},null,-1)])),t("button",{onClick:e[5]||(e[5]=o=>this.connect()),class:w([{disabled:!this.active},"ms-auto btn btn-sm bg-success-subtle text-success-emphasis border-1 border-success-subtle"])},e[10]||(e[10]=[t("i",{class:"bi bi-arrow-right-circle"},null,-1)]),2)])])]),t("div",K,[t("span",{class:w(["dot ms-0 me-2",[this.active?"active":"inactive"]])},null,2),t("small",null,k(this.getHandshakeTime),1),this.refreshing?(i(),n("div",W,e[11]||(e[11]=[t("i",{class:"bi bi-arrow-clockwise"},null,-1)]))):(i(),n("a",{key:1,role:"button",onClick:e[6]||(e[6]=o=>this.handshake()),class:"text-primary-emphasis text-decoration-none ms-auto disabled"},e[12]||(e[12]=[t("i",{class:"bi bi-arrow-clockwise me"},null,-1)])))])])}const F=g(U,[["render",z],["__scopeId","data-v-ed7817c7"]]),H={name:"RemoteServerList",setup(){return{store:S()}},components:{LocaleText:L,RemoteServer:F}},J={class:"w-100 mt-3"},Z={class:"d-flex align-items-center mb-3"},Q={class:"mb-0"},X={class:"w-100 d-flex gap-3 flex-column p-3 border border-1 border-secondary-subtle rounded-3",style:{height:"400px","overflow-y":"scroll"}},Y={key:0,class:"text-muted m-auto"};function ee(s,e,d,c,a,p){const o=f("LocaleText"),v=f("RemoteServer");return i(),n("div",J,[t("div",Z,[t("h5",Q,[l(o,{t:"Server List"})]),t("button",{onClick:e[0]||(e[0]=b=>this.store.addCrossServerConfiguration()),class:"btn bg-primary-subtle text-primary-emphasis border-1 border-primary-subtle shadow-sm ms-auto"},[e[1]||(e[1]=t("i",{class:"bi bi-plus-circle-fill me-2"},null,-1)),l(o,{t:"Server"})])]),t("div",X,[(i(!0),n(T,null,C(this.store.CrossServerConfiguration.ServerList,(b,r)=>(i(),_(v,{onSetActiveServer:I=>this.store.setActiveCrossServer(r),onDelete:I=>this.store.deleteCrossServerConfiguration(r),key:r,server:b},null,8,["onSetActiveServer","onDelete","server"]))),128)),Object.keys(this.store.CrossServerConfiguration.ServerList).length===0?(i(),n("h6",Y,[l(o,{t:"Click"}),e[2]||(e[2]=t("i",{class:"bi bi-plus-circle-fill mx-1"},null,-1)),l(o,{t:"to add your server"})])):$("",!0)])])}const te=g(H,[["render",ee]]),se={name:"signInInput",methods:{GetLocale:m},props:{id:"",data:"",type:"",placeholder:""},computed:{getLocaleText(){return m(this.placeholder)}}},oe=["type","id","name","placeholder"];function ie(s,e,d,c,a,p){return u((i(),n("input",{type:d.type,"onUpdate:modelValue":e[0]||(e[0]=o=>this.data[this.id]=o),class:"form-control rounded-3",id:this.id,name:this.id,autocomplete:"on",placeholder:this.getLocaleText,required:""},null,8,oe)),[[E,this.data[this.id]]])}const re=g(se,[["render",ie]]),ne={name:"signInTOTP",methods:{GetLocale:m},props:{data:""},computed:{getLocaleText(){return m("OTP from your authenticator")}}},ae=["placeholder"];function le(s,e,d,c,a,p){return u((i(),n("input",{class:"form-control totp",required:"",id:"totp",maxlength:"6",type:"text",inputmode:"numeric",autocomplete:"one-time-code",placeholder:this.getLocaleText,"onUpdate:modelValue":e[0]||(e[0]=o=>this.data.totp=o)},null,8,ae)),[[h,this.data.totp]])}const de=g(ne,[["render",le]]),ue={name:"signin",components:{SignInTOTP:de,SignInInput:re,LocaleText:L,RemoteServerList:te,Message:P},async setup(){const s=S();let e="dark",d=!1,c;return s.IsElectronApp||await Promise.all([y("/api/getDashboardTheme",{},a=>{e=a.data}),y("/api/isTotpEnabled",{},a=>{d=a.data}),y("/api/getDashboardVersion",{},a=>{c=a.data})]),s.removeActiveCrossServer(),{store:s,theme:e,totpEnabled:d,version:c}},data(){return{data:{username:"",password:"",totp:""},loginError:!1,loginErrorMessage:"",loading:!1}},computed:{getMessages(){return this.store.Messages.filter(s=>s.show)},applyLocale(s){return m(s)},formValid(){return this.data.username&&this.data.password&&(this.totpEnabled&&this.data.totp||!this.totpEnabled)}},methods:{GetLocale:m,async auth(){this.formValid?(this.loading=!0,await M("/api/authenticate",this.data,s=>{s.status?(this.loginError=!1,this.$refs.signInBtn.classList.add("signedIn"),s.message?this.$router.push("/welcome"):this.store.Redirect!==void 0?this.$router.push(this.store.Redirect):this.$router.push("/")):(this.store.newMessage("Server",s.message,"danger"),document.querySelectorAll("input[required]").forEach(e=>{e.classList.remove("is-valid"),e.classList.add("is-invalid")}),this.loading=!1)})):document.querySelectorAll("input[required]").forEach(s=>{s.value.length===0?(s.classList.remove("is-valid"),s.classList.add("is-invalid")):(s.classList.remove("is-invalid"),s.classList.add("is-valid"))})}}},ce=["data-bs-theme"],me={class:"login-box m-auto"},he={class:"m-auto signInContainer",style:{width:"700px"}},pe={class:"mb-0 text-body"},fe={class:"form-floating mb-2"},ge=["disabled"],be={for:"floatingInput",class:"d-flex"},ve={class:"form-floating mb-2"},ye=["disabled"],xe={for:"floatingInput",class:"d-flex"},_e={key:0,class:"form-floating mb-2"},$e=["disabled"],we={for:"floatingInput",class:"d-flex"},ke=["disabled"],Se={key:0,class:"d-flex w-100"},Te={key:1,class:"d-flex w-100 align-items-center"},Ce={key:2,class:"d-flex mt-3"},Le={class:"form-check form-switch ms-auto"},Ie=["disabled"],Ee={class:"form-check-label",for:"flexSwitchCheckChecked"},Me={class:"text-muted pb-3 d-block w-100 text-center mt-3"},Ve={class:"messageCentre text-body position-absolute d-flex"};function Ae(s,e,d,c,a,p){const o=f("LocaleText"),v=f("RemoteServerList"),b=f("Message");return i(),n("div",{class:"container-fluid login-container-fluid d-flex main flex-column py-4 text-body h-100",style:{"overflow-y":"scroll"},"data-bs-theme":this.theme},[t("div",me,[t("div",he,[t("h4",pe,[l(o,{t:"Welcome to"})]),e[10]||(e[10]=t("span",{class:"dashboardLogo display-3"},[t("strong",null,"WGDashboard")],-1)),this.store.CrossServerConfiguration.Enable?(i(),_(v,{key:1})):(i(),n("form",{key:0,onSubmit:e[3]||(e[3]=r=>{r.preventDefault(),this.auth()}),class:"mt-3"},[t("div",fe,[u(t("input",{type:"text",required:"",disabled:a.loading,"onUpdate:modelValue":e[0]||(e[0]=r=>this.data.username=r),name:"username",autocomplete:"username",autofocus:"",class:"form-control rounded-3",id:"username",placeholder:"Username"},null,8,ge),[[h,this.data.username]]),t("label",be,[e[5]||(e[5]=t("i",{class:"bi bi-person-circle me-2"},null,-1)),l(o,{t:"Username"})])]),t("div",ve,[u(t("input",{type:"password",required:"",disabled:a.loading,autocomplete:"current-password","onUpdate:modelValue":e[1]||(e[1]=r=>this.data.password=r),class:"form-control rounded-3",id:"password",placeholder:"Password"},null,8,ye),[[h,this.data.password]]),t("label",xe,[e[6]||(e[6]=t("i",{class:"bi bi-key-fill me-2"},null,-1)),l(o,{t:"Password"})])]),this.totpEnabled?(i(),n("div",_e,[u(t("input",{type:"text",id:"totp",required:"",disabled:a.loading,placeholder:"totp","onUpdate:modelValue":e[2]||(e[2]=r=>this.data.totp=r),class:"form-control rounded-3",maxlength:"6",inputmode:"numeric",autocomplete:"one-time-code"},null,8,$e),[[h,this.data.totp]]),t("label",we,[e[7]||(e[7]=t("i",{class:"bi bi-lock-fill me-2"},null,-1)),l(o,{t:"OTP from your authenticator"})])])):$("",!0),t("button",{class:"btn btn-lg btn-dark ms-auto mt-5 w-100 d-flex btn-brand signInBtn rounded-3",disabled:this.loading||!this.formValid,ref:"signInBtn"},[this.loading?(i(),n("span",Te,[l(o,{t:"Signing In..."}),e[9]||(e[9]=t("span",{class:"spinner-border ms-auto spinner-border-sm",role:"status"},null,-1))])):(i(),n("span",Se,[l(o,{t:"Sign In"}),e[8]||(e[8]=t("i",{class:"ms-auto bi bi-chevron-right"},null,-1))]))],8,ke)],32)),this.store.IsElectronApp?$("",!0):(i(),n("div",Ce,[t("div",Le,[u(t("input",{"onUpdate:modelValue":e[4]||(e[4]=r=>this.store.CrossServerConfiguration.Enable=r),disabled:a.loading,class:"form-check-input",type:"checkbox",role:"switch",id:"flexSwitchCheckChecked"},null,8,Ie),[[V,this.store.CrossServerConfiguration.Enable]]),t("label",Ee,[l(o,{t:"Access Remote Server"})])])]))])]),t("small",Me,[A(" WGDashboard "+k(this.version)+" | Developed with ❤️ by ",1),e[11]||(e[11]=t("a",{href:"https://github.com/donaldzou",target:"_blank"},[t("strong",null,"Donald Zou")],-1))]),t("div",Ve,[l(R,{name:"message",tag:"div",class:"position-relative flex-sm-grow-0 flex-grow-1 d-flex align-items-end ms-sm-auto flex-column gap-2"},{default:D(()=>[(i(!0),n(T,null,C(p.getMessages.slice().reverse(),r=>(i(),_(b,{message:r,key:r.id},null,8,["message"]))),128))]),_:1})])],8,ce)}const qe=g(ue,[["render",Ae],["__scopeId","data-v-80e20da4"]]);export{qe as default}; diff --git a/src/static/app/dist/assets/storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BeoP6Zsu.js b/src/static/app/dist/assets/storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BOX6BWGk.js similarity index 93% rename from src/static/app/dist/assets/storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BeoP6Zsu.js rename to src/static/app/dist/assets/storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BOX6BWGk.js index 8506590..7b5c48d 100644 --- a/src/static/app/dist/assets/storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BeoP6Zsu.js +++ b/src/static/app/dist/assets/storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BOX6BWGk.js @@ -1 +1 @@ -import{_ as b,p as m,r as p,q as v,a as t,c as r,d as g,w as x,s as n,n as f,b as l,t as d,e as C,j as w}from"./index-CfPziasH.js";const y={class:"text-muted me-2"},_={class:"fw-bold"},k={__name:"cpuCore",props:{core_number:Number,percentage:Number,align:Boolean,square:Boolean},setup(e){m(c=>({"2ec4d3bc":o.value}));const u=e,s=p(!1),o=v(()=>u.square?"40px":"25px");return(c,a)=>(t(),r("div",{class:"flex-grow-1 square rounded-3 border position-relative p-2",onMouseenter:a[0]||(a[0]=i=>s.value=!0),onMouseleave:a[1]||(a[1]=i=>s.value=!1),style:n({"background-color":`rgb(13 110 253 / ${e.percentage*10}%)`})},[g(w,{name:"zoomReversed"},{default:x(()=>[s.value?(t(),r("div",{key:0,style:n([{"white-space":"nowrap"},{top:o.value}]),class:f(["floatingLabel z-3 border position-absolute d-block p-1 px-2 bg-body text-body rounded-3 border shadow d-flex",[e.align?"end-0":"start-0"]])},[l("small",y," Core #"+d(e.core_number+1),1),l("small",_,d(e.percentage)+"% ",1)],6)):C("",!0)]),_:1})],36))}},B=b(k,[["__scopeId","data-v-2ad535bb"]]);export{B as C}; +import{_ as b,p as m,r as p,q as v,a as t,c as r,d as g,w as x,s as n,n as f,b as l,t as d,e as C,j as w}from"./index-AzYVPyhh.js";const y={class:"text-muted me-2"},_={class:"fw-bold"},k={__name:"cpuCore",props:{core_number:Number,percentage:Number,align:Boolean,square:Boolean},setup(e){m(c=>({"2ec4d3bc":o.value}));const u=e,s=p(!1),o=v(()=>u.square?"40px":"25px");return(c,a)=>(t(),r("div",{class:"flex-grow-1 square rounded-3 border position-relative p-2",onMouseenter:a[0]||(a[0]=i=>s.value=!0),onMouseleave:a[1]||(a[1]=i=>s.value=!1),style:n({"background-color":`rgb(13 110 253 / ${e.percentage*10}%)`})},[g(w,{name:"zoomReversed"},{default:x(()=>[s.value?(t(),r("div",{key:0,style:n([{"white-space":"nowrap"},{top:o.value}]),class:f(["floatingLabel z-3 border position-absolute d-block p-1 px-2 bg-body text-body rounded-3 border shadow d-flex",[e.align?"end-0":"start-0"]])},[l("small",y," Core #"+d(e.core_number+1),1),l("small",_,d(e.percentage)+"% ",1)],6)):C("",!0)]),_:1})],36))}},B=b(k,[["__scopeId","data-v-2ad535bb"]]);export{B as C}; diff --git a/src/static/app/dist/assets/systemStatus-_MkxdUbb.js b/src/static/app/dist/assets/systemStatus-m4jEbVO8.js similarity index 96% rename from src/static/app/dist/assets/systemStatus-_MkxdUbb.js rename to src/static/app/dist/assets/systemStatus-m4jEbVO8.js index 3245255..fd0e269 100644 --- a/src/static/app/dist/assets/systemStatus-_MkxdUbb.js +++ b/src/static/app/dist/assets/systemStatus-m4jEbVO8.js @@ -1 +1 @@ -import{_ as E,a as l,c as o,b as e,t as d,D as j,q as _,o as H,x as W,r as p,g as q,d as r,s as h,F as b,h as v,u as N,w as O,T as $,f as x,e as g,i as C,G as y}from"./index-CfPziasH.js";import{L as c}from"./localeText-CyxQ0Kz3.js";import{C as F}from"./storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BeoP6Zsu.js";import{C as z,L as A,B as J,a as K,b as Q,c as X,p as Y,d as Z,e as ee,f as se,P as te,i as ae,g as M}from"./index-CPB-8sFq.js";import{d as le}from"./dayjs.min-C4BEB1lt.js";const oe={class:"mb-1 d-flex gap-5"},re={class:"title"},ne={class:"ms-auto"},ie={__name:"process",props:["process","cpu"],setup(m){return(w,s)=>(l(),o("div",oe,[e("small",re,[s[0]||(s[0]=e("i",{class:"bi bi-code-square me-2"},null,-1)),e("samp",null,d(m.process.command?m.process.command:m.process.name),1)]),e("small",ne,d(Math.round((m.process.percent+Number.EPSILON)*10)/10)+"% ",1)]))}},D=E(ie,[["__scopeId","data-v-ffe5ad8f"]]),ce={class:"text-body row g-2 mb-2"},de={class:"col-sm-6"},ue={class:"card rounded-3 h-100 shadow"},_e={class:"card-body p-4"},pe={class:"d-flex flex-column gap-3"},he={class:"d-flex flex-column gap-3",style:{height:"130px"}},me={class:"d-flex align-items-center"},be={class:"text-muted mb-0"},ve={class:"ms-auto mb-0"},ge={key:0},ye={key:1,class:"spinner-border"},fe={class:"progress",role:"progressbar",style:{height:"10px"}},xe={class:"d-flex gap-1"},we={class:"d-flex align-items-center"},ke={class:"mb-0"},Ne={class:"mb-0 ms-auto text-muted"},Ce={class:"position-relative"},Me={class:"col-sm-6"},Se={class:"card rounded-3 h-100 shadow"},Ie={class:"card-body p-4"},Pe={class:"d-flex flex-column gap-3"},Ue={class:"d-flex flex-column gap-3",style:{height:"130px"}},Le={class:"d-flex align-items-center"},Be={class:"text-muted"},Oe={class:"ms-auto"},$e={key:0},De={key:1,class:"spinner-border"},Ee={class:"progress",role:"progressbar",style:{height:"10px"}},Ve={class:"d-flex align-items-center"},Re={class:"mb-0"},Ge={class:"mb-0 ms-auto"},Te={class:"progress",role:"progressbar",style:{height:"10px"}},je={class:"d-flex align-items-center"},He={class:"mb-0"},We={class:"mb-0 ms-auto text-muted"},qe={class:"position-relative"},Fe={class:"col-sm-12"},ze={class:"card rounded-3 h-100 shadow"},Ae={class:"card-body p-4 d-flex gap-3 flex-column"},Je={class:"d-flex align-items-center gap-3"},Ke={class:"text-muted mb-0"},Qe={class:"ms-auto mb-0"},Xe={key:0},Ye={key:1,class:"spinner-border"},Ze={key:0,class:"mb-0 text-end"},es={class:"text-info"},ss={class:"text-warning"},ts={key:0,class:"row g-3"},as={class:"col-sm-6 fadeIn"},ls={class:"d-flex mb-2"},os={class:"mb-0"},rs={class:"mb-0 ms-auto d-flex gap-2"},ns={class:"text-info"},is={class:"text-warning"},cs={class:"progress",role:"progressbar",style:{height:"10px"}},ds={class:"col-sm-12"},us={class:"card rounded-3 h-100 shadow"},_s={class:"card-body p-4 d-flex gap-3 flex-column"},ps={class:"d-flex align-items-center"},hs={class:"text-muted mb-0"},ms={class:"ms-auto mb-0"},bs={key:0},vs={key:1,class:"spinner-border"},gs={class:"row g-3"},ys={class:"col-sm-6 fadeIn"},fs={class:"d-flex mb-2"},xs={class:"mb-0"},ws={class:"mb-0 ms-auto d-flex gap-2"},ks={class:"text-success"},Ns={class:"progress",role:"progressbar",style:{height:"20px"}},Cs={__name:"systemStatus",setup(m){const w=j(),s=_(()=>w.SystemStatus);let S=null;z.register(A,J,K,Q,X,Y,Z,ee,se,te,ae),H(()=>{L(),S=setInterval(()=>{L()},5e3)}),W(()=>{clearInterval(S)});const f=p([]),I=p([]),P=p([]),U=p([]),i=p({bytes_recv:[],bytes_sent:[]}),u=p({bytes_recv:[],bytes_sent:[]}),L=()=>{q("/api/systemStatus",{},n=>{if(f.value.push(le().format("HH:mm:ss A")),w.SystemStatus=n.data,I.value.push(n.data.CPU.cpu_percent),P.value.push(n.data.Memory.VirtualMemory.percent),U.value.push(n.data.Memory.SwapMemory.percent),i.value.bytes_recv.push(Object.values(n.data.NetworkInterfaces).map(t=>t.bytes_recv).reduce((t,a)=>t+a)),i.value.bytes_sent.push(Object.values(n.data.NetworkInterfaces).map(t=>t.bytes_sent).reduce((t,a)=>t+a)),i.value.bytes_recv.length===1&&i.value.bytes_sent.length===1)u.value.bytes_recv.push(0),u.value.bytes_sent.push(0);else{let t=i.value.bytes_recv[i.value.bytes_recv.length-1]-i.value.bytes_recv[i.value.bytes_recv.length-2],a=i.value.bytes_sent[i.value.bytes_sent.length-1]-i.value.bytes_sent[i.value.bytes_sent.length-2];u.value.bytes_recv.push(Math.round((t/1024e3+Number.EPSILON)*1e4)/1e4),u.value.bytes_sent.push(Math.round((a/1024e3+Number.EPSILON)*1e4)/1e4)}})},B=_(()=>({responsive:!0,plugins:{legend:{display:!0},tooltip:{callbacks:{label:n=>`${n.formattedValue}%`}}},scales:{x:{ticks:{display:!1},grid:{display:!1}},y:{ticks:{callback:(n,t)=>`${n}%`},grid:{display:!1}}}})),V=_(()=>({responsive:!0,plugins:{legend:{display:!0},tooltip:{callbacks:{label:n=>`${n.formattedValue} MB/s`}}},scales:{x:{ticks:{display:!1},grid:{display:!1}},y:{ticks:{callback:(n,t)=>`${n} MB/s`},grid:{display:!1}}}})),R=_(()=>({labels:[...f.value],datasets:[{label:y("CPU Usage"),data:[...I.value],fill:"start",backgroundColor:"#0d6efd90",borderColor:"#0d6efd",tension:0,pointRadius:2,borderWidth:1}]})),G=_(()=>({labels:[...f.value],datasets:[{label:y("Memory Usage"),data:[...P.value],fill:1,borderColor:"#0dcaf0",backgroundColor:"#0dcaf090",tension:0,pointRadius:2,borderWidth:1},{label:y("Swap Memory Usage"),data:[...U.value],fill:"start",backgroundColor:"#ffc10790",borderColor:"#ffc107",tension:0,pointRadius:2,borderWidth:1}]})),T=_(()=>({labels:[...f.value],datasets:[{label:y("Real Time Received Data Usage"),data:[...u.value.bytes_recv],fill:"origin",borderColor:"#0dcaf0",backgroundColor:"#0dcaf090",tension:0,pointRadius:2,borderWidth:1},{label:y("Real Time Sent Data Usage"),data:[...u.value.bytes_sent],fill:"origin",backgroundColor:"#ffc10790",borderColor:"#ffc107",tension:0,pointRadius:2,borderWidth:1}]}));return(n,t)=>(l(),o("div",ce,[e("div",de,[e("div",ue,[e("div",_e,[e("div",pe,[e("div",he,[e("div",me,[e("h3",be,[t[0]||(t[0]=e("i",{class:"bi bi-cpu-fill me-2"},null,-1)),r(c,{t:"CPU"})]),e("h3",ve,[s.value?(l(),o("span",ge,d(s.value.CPU.cpu_percent)+"% ",1)):(l(),o("span",ye))])]),e("div",fe,[e("div",{class:"progress-bar",style:h({width:`${s.value?.CPU.cpu_percent}%`})},null,4)]),e("div",xe,[(l(!0),o(b,null,v(s.value?.CPU.cpu_percent_per_cpu,(a,k)=>(l(),C(F,{square:!0,key:k,align:k+1>Math.round(s.value?.CPU.cpu_percent_per_cpu.length/2),core_number:k,percentage:a},null,8,["align","core_number","percentage"]))),128))])]),r(N(M),{options:B.value,data:R.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["options","data"]),e("div",we,[e("h5",ke,[r(c,{t:"Processes"})]),e("h6",Ne,[e("small",null,[r(c,{t:"CPU Usage"})])])]),t[1]||(t[1]=e("hr",{class:"my-1"},null,-1)),e("div",Ce,[r($,{name:"process"},{default:O(()=>[(l(!0),o(b,null,v(s.value?.Processes.cpu_top_10,a=>(l(),C(D,{key:a.pid,cpu:!0,process:a},null,8,["process"]))),128))]),_:1})])])])])]),e("div",Me,[e("div",Se,[e("div",Ie,[e("div",Pe,[e("div",Ue,[e("div",Le,[e("h3",Be,[t[2]||(t[2]=e("i",{class:"bi bi-memory me-2"},null,-1)),r(c,{t:"Memory"})]),e("h3",Oe,[s.value?(l(),o("span",$e,d(s.value?.Memory.VirtualMemory.percent)+"% ",1)):(l(),o("span",De))])]),e("div",Ee,[e("div",{class:"progress-bar bg-info",style:h({width:`${s.value?.Memory.VirtualMemory.percent}%`})},null,4)]),e("div",Ve,[e("h6",Re,[r(c,{t:"Swap Memory"})]),e("h6",Ge,d(s.value?.Memory.SwapMemory.percent)+"%",1)]),e("div",Te,[e("div",{class:"progress-bar bg-info-subtle",style:h({width:`${s.value?.Memory.SwapMemory.percent}%`})},null,4)])]),r(N(M),{options:B.value,data:G.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["options","data"]),e("div",je,[e("h5",He,[r(c,{t:"Processes"})]),e("h6",We,[e("small",null,[r(c,{t:"Memory Usage"})])])]),t[3]||(t[3]=e("hr",{class:"my-1"},null,-1)),e("div",qe,[r($,{name:"process"},{default:O(()=>[(l(!0),o(b,null,v(s.value?.Processes.memory_top_10,a=>(l(),C(D,{key:a.pid,process:a},null,8,["process"]))),128))]),_:1})])])])])]),e("div",Fe,[e("div",ze,[e("div",Ae,[e("div",Je,[e("h3",Ke,[t[4]||(t[4]=e("i",{class:"bi bi-ethernet me-2"},null,-1)),r(c,{t:"Network"})]),e("h3",Qe,[s.value?(l(),o("span",Xe,[r(c,{t:Object.keys(s.value.NetworkInterfaces).length+" Interface"+(Object.keys(s.value.NetworkInterfaces).length>1?"s":"")},null,8,["t"])])):(l(),o("span",Ye))])]),e("div",null,[s.value?(l(),o("h5",Ze,[e("span",es,[t[5]||(t[5]=e("i",{class:"bi bi-arrow-down"},null,-1)),x(" "+d(u.value.bytes_recv[u.value.bytes_recv.length-1])+" MB/s ",1)]),e("span",ss,[t[6]||(t[6]=e("i",{class:"bi bi-arrow-up"},null,-1)),x(" "+d(u.value.bytes_sent[u.value.bytes_sent.length-1])+" MB/s ",1)])])):g("",!0)]),r(N(M),{options:V.value,data:T.value,style:{width:"100%",height:"300px","max-height":"300px"}},null,8,["options","data"]),s.value?(l(),o("div",ts,[(l(!0),o(b,null,v(Object.keys(s.value.NetworkInterfaces).sort(),a=>(l(),o("div",as,[e("div",ls,[e("h6",os,[e("samp",null,d(a),1)]),e("h6",rs,[e("span",ns,[t[7]||(t[7]=e("i",{class:"bi bi-arrow-down"},null,-1)),x(" "+d(Math.round((s.value.NetworkInterfaces[a].bytes_recv/1024e6+Number.EPSILON)*1e4)/1e4)+" GB ",1)]),e("span",is,[t[8]||(t[8]=e("i",{class:"bi bi-arrow-up"},null,-1)),x(" "+d(Math.round((s.value.NetworkInterfaces[a].bytes_sent/1024e6+Number.EPSILON)*1e4)/1e4)+" GB ",1)])])]),e("div",cs,[s.value.NetworkInterfaces[a].bytes_recv>0?(l(),o("div",{key:0,class:"progress-bar bg-info",style:h({width:`${s.value.NetworkInterfaces[a].bytes_recv/(s.value.NetworkInterfaces[a].bytes_sent+s.value.NetworkInterfaces[a].bytes_recv)*100}%`})},null,4)):g("",!0),s.value.NetworkInterfaces[a].bytes_sent>0?(l(),o("div",{key:1,class:"progress-bar bg-warning",style:h({width:`${s.value.NetworkInterfaces[a].bytes_sent/(s.value.NetworkInterfaces[a].bytes_sent+s.value.NetworkInterfaces[a].bytes_recv)*100}%`})},null,4)):g("",!0)])]))),256))])):g("",!0)])])]),e("div",ds,[e("div",us,[e("div",_s,[e("div",ps,[e("h3",hs,[t[9]||(t[9]=e("i",{class:"bi bi-device-ssd-fill me-2"},null,-1)),r(c,{t:"Storage"})]),e("h3",ms,[s.value?(l(),o("span",bs,[r(c,{t:s.value.Disks.length+" Partition"+(s.value.Disks.length>1?"s":"")},null,8,["t"])])):(l(),o("span",vs))])]),e("div",gs,[s.value?(l(!0),o(b,{key:0},v(s.value.Disks,a=>(l(),o("div",ys,[e("div",fs,[e("h6",xs,[e("samp",null,d(a.mountPoint),1)]),e("h6",ws,[e("span",ks,[r(c,{t:Math.round((a.used/1024e6+Number.EPSILON)*100)/100+" / "+Math.round((a.total/1024e6+Number.EPSILON)*100)/100+" GB Used"},null,8,["t"])])])]),e("div",Ns,[e("div",{class:"progress-bar bg-success",style:h({width:`${a.percent}%`})},d(a.percent)+"% ",5)])]))),256)):g("",!0)])])])])]))}},Ls=E(Cs,[["__scopeId","data-v-977dc46d"]]);export{Ls as default}; +import{_ as E,a as l,c as o,b as e,t as d,D as j,q as _,o as H,x as W,r as p,g as q,d as r,s as h,F as b,h as v,u as N,w as O,T as $,f as x,e as g,i as C,G as y}from"./index-AzYVPyhh.js";import{L as c}from"./localeText-qJNpKS91.js";import{C as F}from"./storageMount.vue_vue_type_style_index_0_scoped_9509d7a0_lang-BOX6BWGk.js";import{C as z,L as A,B as J,a as K,b as Q,c as X,p as Y,d as Z,e as ee,f as se,P as te,i as ae,g as M}from"./index-DuEkGU1e.js";import{d as le}from"./dayjs.min-DO3nadR-.js";const oe={class:"mb-1 d-flex gap-5"},re={class:"title"},ne={class:"ms-auto"},ie={__name:"process",props:["process","cpu"],setup(m){return(w,s)=>(l(),o("div",oe,[e("small",re,[s[0]||(s[0]=e("i",{class:"bi bi-code-square me-2"},null,-1)),e("samp",null,d(m.process.command?m.process.command:m.process.name),1)]),e("small",ne,d(Math.round((m.process.percent+Number.EPSILON)*10)/10)+"% ",1)]))}},D=E(ie,[["__scopeId","data-v-ffe5ad8f"]]),ce={class:"text-body row g-2 mb-2"},de={class:"col-sm-6"},ue={class:"card rounded-3 h-100 shadow"},_e={class:"card-body p-4"},pe={class:"d-flex flex-column gap-3"},he={class:"d-flex flex-column gap-3",style:{height:"130px"}},me={class:"d-flex align-items-center"},be={class:"text-muted mb-0"},ve={class:"ms-auto mb-0"},ge={key:0},ye={key:1,class:"spinner-border"},fe={class:"progress",role:"progressbar",style:{height:"10px"}},xe={class:"d-flex gap-1"},we={class:"d-flex align-items-center"},ke={class:"mb-0"},Ne={class:"mb-0 ms-auto text-muted"},Ce={class:"position-relative"},Me={class:"col-sm-6"},Se={class:"card rounded-3 h-100 shadow"},Ie={class:"card-body p-4"},Pe={class:"d-flex flex-column gap-3"},Ue={class:"d-flex flex-column gap-3",style:{height:"130px"}},Le={class:"d-flex align-items-center"},Be={class:"text-muted"},Oe={class:"ms-auto"},$e={key:0},De={key:1,class:"spinner-border"},Ee={class:"progress",role:"progressbar",style:{height:"10px"}},Ve={class:"d-flex align-items-center"},Re={class:"mb-0"},Ge={class:"mb-0 ms-auto"},Te={class:"progress",role:"progressbar",style:{height:"10px"}},je={class:"d-flex align-items-center"},He={class:"mb-0"},We={class:"mb-0 ms-auto text-muted"},qe={class:"position-relative"},Fe={class:"col-sm-12"},ze={class:"card rounded-3 h-100 shadow"},Ae={class:"card-body p-4 d-flex gap-3 flex-column"},Je={class:"d-flex align-items-center gap-3"},Ke={class:"text-muted mb-0"},Qe={class:"ms-auto mb-0"},Xe={key:0},Ye={key:1,class:"spinner-border"},Ze={key:0,class:"mb-0 text-end"},es={class:"text-info"},ss={class:"text-warning"},ts={key:0,class:"row g-3"},as={class:"col-sm-6 fadeIn"},ls={class:"d-flex mb-2"},os={class:"mb-0"},rs={class:"mb-0 ms-auto d-flex gap-2"},ns={class:"text-info"},is={class:"text-warning"},cs={class:"progress",role:"progressbar",style:{height:"10px"}},ds={class:"col-sm-12"},us={class:"card rounded-3 h-100 shadow"},_s={class:"card-body p-4 d-flex gap-3 flex-column"},ps={class:"d-flex align-items-center"},hs={class:"text-muted mb-0"},ms={class:"ms-auto mb-0"},bs={key:0},vs={key:1,class:"spinner-border"},gs={class:"row g-3"},ys={class:"col-sm-6 fadeIn"},fs={class:"d-flex mb-2"},xs={class:"mb-0"},ws={class:"mb-0 ms-auto d-flex gap-2"},ks={class:"text-success"},Ns={class:"progress",role:"progressbar",style:{height:"20px"}},Cs={__name:"systemStatus",setup(m){const w=j(),s=_(()=>w.SystemStatus);let S=null;z.register(A,J,K,Q,X,Y,Z,ee,se,te,ae),H(()=>{L(),S=setInterval(()=>{L()},5e3)}),W(()=>{clearInterval(S)});const f=p([]),I=p([]),P=p([]),U=p([]),i=p({bytes_recv:[],bytes_sent:[]}),u=p({bytes_recv:[],bytes_sent:[]}),L=()=>{q("/api/systemStatus",{},n=>{if(f.value.push(le().format("HH:mm:ss A")),w.SystemStatus=n.data,I.value.push(n.data.CPU.cpu_percent),P.value.push(n.data.Memory.VirtualMemory.percent),U.value.push(n.data.Memory.SwapMemory.percent),i.value.bytes_recv.push(Object.values(n.data.NetworkInterfaces).map(t=>t.bytes_recv).reduce((t,a)=>t+a)),i.value.bytes_sent.push(Object.values(n.data.NetworkInterfaces).map(t=>t.bytes_sent).reduce((t,a)=>t+a)),i.value.bytes_recv.length===1&&i.value.bytes_sent.length===1)u.value.bytes_recv.push(0),u.value.bytes_sent.push(0);else{let t=i.value.bytes_recv[i.value.bytes_recv.length-1]-i.value.bytes_recv[i.value.bytes_recv.length-2],a=i.value.bytes_sent[i.value.bytes_sent.length-1]-i.value.bytes_sent[i.value.bytes_sent.length-2];u.value.bytes_recv.push(Math.round((t/1024e3+Number.EPSILON)*1e4)/1e4),u.value.bytes_sent.push(Math.round((a/1024e3+Number.EPSILON)*1e4)/1e4)}})},B=_(()=>({responsive:!0,plugins:{legend:{display:!0},tooltip:{callbacks:{label:n=>`${n.formattedValue}%`}}},scales:{x:{ticks:{display:!1},grid:{display:!1}},y:{ticks:{callback:(n,t)=>`${n}%`},grid:{display:!1}}}})),V=_(()=>({responsive:!0,plugins:{legend:{display:!0},tooltip:{callbacks:{label:n=>`${n.formattedValue} MB/s`}}},scales:{x:{ticks:{display:!1},grid:{display:!1}},y:{ticks:{callback:(n,t)=>`${n} MB/s`},grid:{display:!1}}}})),R=_(()=>({labels:[...f.value],datasets:[{label:y("CPU Usage"),data:[...I.value],fill:"start",backgroundColor:"#0d6efd90",borderColor:"#0d6efd",tension:0,pointRadius:2,borderWidth:1}]})),G=_(()=>({labels:[...f.value],datasets:[{label:y("Memory Usage"),data:[...P.value],fill:1,borderColor:"#0dcaf0",backgroundColor:"#0dcaf090",tension:0,pointRadius:2,borderWidth:1},{label:y("Swap Memory Usage"),data:[...U.value],fill:"start",backgroundColor:"#ffc10790",borderColor:"#ffc107",tension:0,pointRadius:2,borderWidth:1}]})),T=_(()=>({labels:[...f.value],datasets:[{label:y("Real Time Received Data Usage"),data:[...u.value.bytes_recv],fill:"origin",borderColor:"#0dcaf0",backgroundColor:"#0dcaf090",tension:0,pointRadius:2,borderWidth:1},{label:y("Real Time Sent Data Usage"),data:[...u.value.bytes_sent],fill:"origin",backgroundColor:"#ffc10790",borderColor:"#ffc107",tension:0,pointRadius:2,borderWidth:1}]}));return(n,t)=>(l(),o("div",ce,[e("div",de,[e("div",ue,[e("div",_e,[e("div",pe,[e("div",he,[e("div",me,[e("h3",be,[t[0]||(t[0]=e("i",{class:"bi bi-cpu-fill me-2"},null,-1)),r(c,{t:"CPU"})]),e("h3",ve,[s.value?(l(),o("span",ge,d(s.value.CPU.cpu_percent)+"% ",1)):(l(),o("span",ye))])]),e("div",fe,[e("div",{class:"progress-bar",style:h({width:`${s.value?.CPU.cpu_percent}%`})},null,4)]),e("div",xe,[(l(!0),o(b,null,v(s.value?.CPU.cpu_percent_per_cpu,(a,k)=>(l(),C(F,{square:!0,key:k,align:k+1>Math.round(s.value?.CPU.cpu_percent_per_cpu.length/2),core_number:k,percentage:a},null,8,["align","core_number","percentage"]))),128))])]),r(N(M),{options:B.value,data:R.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["options","data"]),e("div",we,[e("h5",ke,[r(c,{t:"Processes"})]),e("h6",Ne,[e("small",null,[r(c,{t:"CPU Usage"})])])]),t[1]||(t[1]=e("hr",{class:"my-1"},null,-1)),e("div",Ce,[r($,{name:"process"},{default:O(()=>[(l(!0),o(b,null,v(s.value?.Processes.cpu_top_10,a=>(l(),C(D,{key:a.pid,cpu:!0,process:a},null,8,["process"]))),128))]),_:1})])])])])]),e("div",Me,[e("div",Se,[e("div",Ie,[e("div",Pe,[e("div",Ue,[e("div",Le,[e("h3",Be,[t[2]||(t[2]=e("i",{class:"bi bi-memory me-2"},null,-1)),r(c,{t:"Memory"})]),e("h3",Oe,[s.value?(l(),o("span",$e,d(s.value?.Memory.VirtualMemory.percent)+"% ",1)):(l(),o("span",De))])]),e("div",Ee,[e("div",{class:"progress-bar bg-info",style:h({width:`${s.value?.Memory.VirtualMemory.percent}%`})},null,4)]),e("div",Ve,[e("h6",Re,[r(c,{t:"Swap Memory"})]),e("h6",Ge,d(s.value?.Memory.SwapMemory.percent)+"%",1)]),e("div",Te,[e("div",{class:"progress-bar bg-info-subtle",style:h({width:`${s.value?.Memory.SwapMemory.percent}%`})},null,4)])]),r(N(M),{options:B.value,data:G.value,style:{width:"100%",height:"200px","max-height":"200px"}},null,8,["options","data"]),e("div",je,[e("h5",He,[r(c,{t:"Processes"})]),e("h6",We,[e("small",null,[r(c,{t:"Memory Usage"})])])]),t[3]||(t[3]=e("hr",{class:"my-1"},null,-1)),e("div",qe,[r($,{name:"process"},{default:O(()=>[(l(!0),o(b,null,v(s.value?.Processes.memory_top_10,a=>(l(),C(D,{key:a.pid,process:a},null,8,["process"]))),128))]),_:1})])])])])]),e("div",Fe,[e("div",ze,[e("div",Ae,[e("div",Je,[e("h3",Ke,[t[4]||(t[4]=e("i",{class:"bi bi-ethernet me-2"},null,-1)),r(c,{t:"Network"})]),e("h3",Qe,[s.value?(l(),o("span",Xe,[r(c,{t:Object.keys(s.value.NetworkInterfaces).length+" Interface"+(Object.keys(s.value.NetworkInterfaces).length>1?"s":"")},null,8,["t"])])):(l(),o("span",Ye))])]),e("div",null,[s.value?(l(),o("h5",Ze,[e("span",es,[t[5]||(t[5]=e("i",{class:"bi bi-arrow-down"},null,-1)),x(" "+d(u.value.bytes_recv[u.value.bytes_recv.length-1])+" MB/s ",1)]),e("span",ss,[t[6]||(t[6]=e("i",{class:"bi bi-arrow-up"},null,-1)),x(" "+d(u.value.bytes_sent[u.value.bytes_sent.length-1])+" MB/s ",1)])])):g("",!0)]),r(N(M),{options:V.value,data:T.value,style:{width:"100%",height:"300px","max-height":"300px"}},null,8,["options","data"]),s.value?(l(),o("div",ts,[(l(!0),o(b,null,v(Object.keys(s.value.NetworkInterfaces).sort(),a=>(l(),o("div",as,[e("div",ls,[e("h6",os,[e("samp",null,d(a),1)]),e("h6",rs,[e("span",ns,[t[7]||(t[7]=e("i",{class:"bi bi-arrow-down"},null,-1)),x(" "+d(Math.round((s.value.NetworkInterfaces[a].bytes_recv/1024e6+Number.EPSILON)*1e4)/1e4)+" GB ",1)]),e("span",is,[t[8]||(t[8]=e("i",{class:"bi bi-arrow-up"},null,-1)),x(" "+d(Math.round((s.value.NetworkInterfaces[a].bytes_sent/1024e6+Number.EPSILON)*1e4)/1e4)+" GB ",1)])])]),e("div",cs,[s.value.NetworkInterfaces[a].bytes_recv>0?(l(),o("div",{key:0,class:"progress-bar bg-info",style:h({width:`${s.value.NetworkInterfaces[a].bytes_recv/(s.value.NetworkInterfaces[a].bytes_sent+s.value.NetworkInterfaces[a].bytes_recv)*100}%`})},null,4)):g("",!0),s.value.NetworkInterfaces[a].bytes_sent>0?(l(),o("div",{key:1,class:"progress-bar bg-warning",style:h({width:`${s.value.NetworkInterfaces[a].bytes_sent/(s.value.NetworkInterfaces[a].bytes_sent+s.value.NetworkInterfaces[a].bytes_recv)*100}%`})},null,4)):g("",!0)])]))),256))])):g("",!0)])])]),e("div",ds,[e("div",us,[e("div",_s,[e("div",ps,[e("h3",hs,[t[9]||(t[9]=e("i",{class:"bi bi-device-ssd-fill me-2"},null,-1)),r(c,{t:"Storage"})]),e("h3",ms,[s.value?(l(),o("span",bs,[r(c,{t:s.value.Disks.length+" Partition"+(s.value.Disks.length>1?"s":"")},null,8,["t"])])):(l(),o("span",vs))])]),e("div",gs,[s.value?(l(!0),o(b,{key:0},v(s.value.Disks,a=>(l(),o("div",ys,[e("div",fs,[e("h6",xs,[e("samp",null,d(a.mountPoint),1)]),e("h6",ws,[e("span",ks,[r(c,{t:Math.round((a.used/1024e6+Number.EPSILON)*100)/100+" / "+Math.round((a.total/1024e6+Number.EPSILON)*100)/100+" GB Used"},null,8,["t"])])])]),e("div",Ns,[e("div",{class:"progress-bar bg-success",style:h({width:`${a.percent}%`})},d(a.percent)+"% ",5)])]))),256)):g("",!0)])])])])]))}},Ls=E(Cs,[["__scopeId","data-v-977dc46d"]]);export{Ls as default}; diff --git a/src/static/app/dist/assets/totp-2ovufqb0.js b/src/static/app/dist/assets/totp-SN5K0l_P.js similarity index 96% rename from src/static/app/dist/assets/totp-2ovufqb0.js rename to src/static/app/dist/assets/totp-SN5K0l_P.js index 68930d6..56fd6a7 100644 --- a/src/static/app/dist/assets/totp-2ovufqb0.js +++ b/src/static/app/dist/assets/totp-SN5K0l_P.js @@ -1 +1 @@ -import{_ as h,D as m,g as p,A as f,c as b,b as t,d as i,t as _,m as v,y as g,i as d,w as r,k as c,a as n}from"./index-CfPziasH.js";import{b as x}from"./browser-CjSdxGTc.js";import{L as y}from"./localeText-CyxQ0Kz3.js";const T={name:"totp",components:{LocaleText:y},async setup(){const s=m();let e="";return await p("/api/Welcome_GetTotpLink",{},a=>{a.status&&(e=a.data)}),{l:e,store:s}},mounted(){this.l&&x.toCanvas(document.getElementById("qrcode"),this.l,function(s){})},data(){return{totp:"",totpInvalidMessage:"",verified:!1}},methods:{validateTotp(){}},watch:{totp(s){const e=document.querySelector("#totp");e.classList.remove("is-invalid","is-valid"),s.length===6&&(console.log(s),/[0-9]{6}/.test(s)?f("/api/Welcome_VerifyTotpLink",{totp:s},a=>{a.status?(this.verified=!0,e.classList.add("is-valid"),this.$emit("verified")):(e.classList.add("is-invalid"),this.totpInvalidMessage="TOTP does not match.")}):(e.classList.add("is-invalid"),this.totpInvalidMessage="TOTP can only contain numbers"))}}},k=["data-bs-theme"],w={class:"m-auto text-body",style:{width:"500px"}},L={class:"d-flex flex-column"},M={class:"dashboardLogo display-4"},C={class:"mb-2"},P={class:"text-muted"},I={class:"p-3 bg-body-secondary rounded-3 border mb-3"},O={class:"text-muted mb-0"},B=["href"],$={style:{"line-break":"anywhere"}},A={for:"totp",class:"mb-2"},D={class:"text-muted"},S={class:"form-group mb-2"},q=["disabled"],E={class:"invalid-feedback"},F={class:"valid-feedback"},R={class:"d-flex gap-3 mt-5 flex-column"};function G(s,e,a,N,W,Q){const o=c("LocaleText"),l=c("RouterLink");return n(),b("div",{class:"container-fluid login-container-fluid d-flex main pt-5 overflow-scroll","data-bs-theme":this.store.Configuration.Server.dashboard_theme},[t("div",w,[t("div",L,[t("div",null,[t("h1",M,[i(o,{t:"Multi-Factor Authentication (MFA)"})]),t("p",C,[t("small",P,[i(o,{t:"1. Please scan the following QR Code to generate TOTP with your choice of authenticator"})])]),e[1]||(e[1]=t("canvas",{id:"qrcode",class:"rounded-3 mb-2"},null,-1)),t("div",I,[t("p",O,[t("small",null,[i(o,{t:"Or you can click the link below:"})])]),t("a",{href:this.l},[t("code",$,_(this.l),1)],8,B)]),t("label",A,[t("small",D,[i(o,{t:"2. Enter the TOTP generated by your authenticator to verify"})])]),t("div",S,[v(t("input",{class:"form-control text-center totp",id:"totp",maxlength:"6",type:"text",inputmode:"numeric",autocomplete:"one-time-code","onUpdate:modelValue":e[0]||(e[0]=u=>this.totp=u),disabled:this.verified},null,8,q),[[g,this.totp]]),t("div",E,[i(o,{t:this.totpInvalidMessage},null,8,["t"])]),t("div",F,[i(o,{t:"TOTP verified!"})])])]),e[4]||(e[4]=t("hr",null,null,-1)),t("div",R,[this.verified?(n(),d(l,{key:1,to:"/",class:"btn btn-dark btn-lg d-flex btn-brand shadow align-items-center flex-grow-1 rounded-3"},{default:r(()=>[i(o,{t:"Complete"}),e[3]||(e[3]=t("i",{class:"bi bi-chevron-right ms-auto"},null,-1))]),_:1})):(n(),d(l,{key:0,to:"/",class:"btn bg-secondary-subtle text-secondary-emphasis rounded-3 flex-grow-1 btn-lg border-1 border-secondary-subtle shadow d-flex"},{default:r(()=>[i(o,{t:"I don't need MFA"}),e[2]||(e[2]=t("i",{class:"bi bi-chevron-right ms-auto"},null,-1))]),_:1}))])])])],8,k)}const z=h(T,[["render",G]]);export{z as default}; +import{_ as h,D as m,g as p,A as f,c as b,b as t,d as i,t as _,m as v,y as g,i as d,w as r,k as c,a as n}from"./index-AzYVPyhh.js";import{b as x}from"./browser-CjSdxGTc.js";import{L as y}from"./localeText-qJNpKS91.js";const T={name:"totp",components:{LocaleText:y},async setup(){const s=m();let e="";return await p("/api/Welcome_GetTotpLink",{},a=>{a.status&&(e=a.data)}),{l:e,store:s}},mounted(){this.l&&x.toCanvas(document.getElementById("qrcode"),this.l,function(s){})},data(){return{totp:"",totpInvalidMessage:"",verified:!1}},methods:{validateTotp(){}},watch:{totp(s){const e=document.querySelector("#totp");e.classList.remove("is-invalid","is-valid"),s.length===6&&(console.log(s),/[0-9]{6}/.test(s)?f("/api/Welcome_VerifyTotpLink",{totp:s},a=>{a.status?(this.verified=!0,e.classList.add("is-valid"),this.$emit("verified")):(e.classList.add("is-invalid"),this.totpInvalidMessage="TOTP does not match.")}):(e.classList.add("is-invalid"),this.totpInvalidMessage="TOTP can only contain numbers"))}}},k=["data-bs-theme"],w={class:"m-auto text-body",style:{width:"500px"}},L={class:"d-flex flex-column"},M={class:"dashboardLogo display-4"},C={class:"mb-2"},P={class:"text-muted"},I={class:"p-3 bg-body-secondary rounded-3 border mb-3"},O={class:"text-muted mb-0"},B=["href"],$={style:{"line-break":"anywhere"}},A={for:"totp",class:"mb-2"},D={class:"text-muted"},S={class:"form-group mb-2"},q=["disabled"],E={class:"invalid-feedback"},F={class:"valid-feedback"},R={class:"d-flex gap-3 mt-5 flex-column"};function G(s,e,a,N,W,Q){const o=c("LocaleText"),l=c("RouterLink");return n(),b("div",{class:"container-fluid login-container-fluid d-flex main pt-5 overflow-scroll","data-bs-theme":this.store.Configuration.Server.dashboard_theme},[t("div",w,[t("div",L,[t("div",null,[t("h1",M,[i(o,{t:"Multi-Factor Authentication (MFA)"})]),t("p",C,[t("small",P,[i(o,{t:"1. Please scan the following QR Code to generate TOTP with your choice of authenticator"})])]),e[1]||(e[1]=t("canvas",{id:"qrcode",class:"rounded-3 mb-2"},null,-1)),t("div",I,[t("p",O,[t("small",null,[i(o,{t:"Or you can click the link below:"})])]),t("a",{href:this.l},[t("code",$,_(this.l),1)],8,B)]),t("label",A,[t("small",D,[i(o,{t:"2. Enter the TOTP generated by your authenticator to verify"})])]),t("div",S,[v(t("input",{class:"form-control text-center totp",id:"totp",maxlength:"6",type:"text",inputmode:"numeric",autocomplete:"one-time-code","onUpdate:modelValue":e[0]||(e[0]=u=>this.totp=u),disabled:this.verified},null,8,q),[[g,this.totp]]),t("div",E,[i(o,{t:this.totpInvalidMessage},null,8,["t"])]),t("div",F,[i(o,{t:"TOTP verified!"})])])]),e[4]||(e[4]=t("hr",null,null,-1)),t("div",R,[this.verified?(n(),d(l,{key:1,to:"/",class:"btn btn-dark btn-lg d-flex btn-brand shadow align-items-center flex-grow-1 rounded-3"},{default:r(()=>[i(o,{t:"Complete"}),e[3]||(e[3]=t("i",{class:"bi bi-chevron-right ms-auto"},null,-1))]),_:1})):(n(),d(l,{key:0,to:"/",class:"btn bg-secondary-subtle text-secondary-emphasis rounded-3 flex-grow-1 btn-lg border-1 border-secondary-subtle shadow d-flex"},{default:r(()=>[i(o,{t:"I don't need MFA"}),e[2]||(e[2]=t("i",{class:"bi bi-chevron-right ms-auto"},null,-1))]),_:1}))])])])],8,k)}const z=h(T,[["render",G]]);export{z as default}; diff --git a/src/static/app/dist/assets/traceroute-BgNVsivF.js b/src/static/app/dist/assets/traceroute-DiI_l9IX.js similarity index 96% rename from src/static/app/dist/assets/traceroute-BgNVsivF.js rename to src/static/app/dist/assets/traceroute-DiI_l9IX.js index e32b055..03c9a42 100644 --- a/src/static/app/dist/assets/traceroute-BgNVsivF.js +++ b/src/static/app/dist/assets/traceroute-DiI_l9IX.js @@ -1 +1 @@ -import{_ as h,W as g,g as b,c as o,b as t,d as n,m as y,y as f,C as x,w as r,j as c,a as l,f as v,F as u,h as m,n as k,s as T,t as i,k as _}from"./index-CfPziasH.js";import{O as A}from"./osmap-C6nMOrBf.js";import{L as w}from"./localeText-CyxQ0Kz3.js";const R={name:"traceroute",components:{LocaleText:w,OSMap:A},data(){return{tracing:!1,ipAddress:void 0,tracerouteResult:void 0}},setup(){return{store:g()}},methods:{execute(){this.ipAddress&&(this.tracing=!0,this.tracerouteResult=void 0,b("/api/traceroute/execute",{ipAddress:this.ipAddress},d=>{d.status?this.tracerouteResult=d.data:this.store.newMessage("Server",d.message,"danger"),this.tracing=!1}))}}},M={class:"mt-md-5 mt-3 text-body"},S={class:"container-md"},$={class:"mb-3 text-body"},C={class:"d-flex gap-2 mb-3 flex-column"},L={class:"flex-grow-1"},P={class:"mb-1 text-muted",for:"ipAddress"},O=["disabled"],V=["disabled"],B={key:0,class:"d-block"},I={key:1,class:"d-block"},N={class:"position-relative"},z={key:"pingPlaceholder"},D={key:1},E={key:"table",class:"w-100 mt-2"},F={class:"table table-sm rounded-3 w-100"},G={scope:"col"},H={scope:"col"},K={scope:"col"},W={scope:"col"},j={scope:"col"},U={scope:"col"},q={key:0},J={key:1};function Q(d,s,X,Y,Z,tt){const a=_("LocaleText"),p=_("OSMap");return l(),o("div",M,[t("div",S,[t("h3",$,[n(a,{t:"Traceroute"})]),t("div",C,[t("div",L,[t("label",P,[t("small",null,[n(a,{t:"Enter IP Address / Hostname"})])]),y(t("input",{disabled:this.tracing,id:"ipAddress",class:"form-control rounded-3","onUpdate:modelValue":s[0]||(s[0]=e=>this.ipAddress=e),onKeyup:s[1]||(s[1]=x(e=>this.execute(),["enter"])),type:"text"},null,40,O),[[f,this.ipAddress]])]),t("button",{class:"btn btn-primary rounded-3 position-relative flex-grow-1",disabled:this.tracing||!this.ipAddress,onClick:s[2]||(s[2]=e=>this.execute())},[n(c,{name:"slide"},{default:r(()=>[this.tracing?(l(),o("span",I,s[4]||(s[4]=[t("span",{class:"spinner-border spinner-border-sm","aria-hidden":"true"},null,-1),t("span",{class:"visually-hidden",role:"status"},"Loading...",-1)]))):(l(),o("span",B,s[3]||(s[3]=[t("i",{class:"bi bi-person-walking me-2"},null,-1),v("Trace! ")])))]),_:1})],8,V)]),t("div",N,[n(c,{name:"ping"},{default:r(()=>[this.tracerouteResult?(l(),o("div",D,[n(p,{d:this.tracerouteResult,type:"traceroute"},null,8,["d"]),t("div",E,[t("table",F,[t("thead",null,[t("tr",null,[t("th",G,[n(a,{t:"Hop"})]),t("th",H,[n(a,{t:"IP Address"})]),t("th",K,[n(a,{t:"Average RTT (ms)"})]),t("th",W,[n(a,{t:"Min RTT (ms)"})]),t("th",j,[n(a,{t:"Max RTT (ms)"})]),t("th",U,[n(a,{t:"Geolocation"})])])]),t("tbody",null,[(l(!0),o(u,null,m(this.tracerouteResult,(e,et)=>(l(),o("tr",null,[t("td",null,[t("small",null,i(e.hop),1)]),t("td",null,[t("small",null,[t("samp",null,i(e.ip),1)])]),t("td",null,[t("small",null,[t("samp",null,i(e.avg_rtt),1)])]),t("td",null,[t("small",null,[t("samp",null,i(e.min_rtt),1)])]),t("td",null,[t("small",null,[t("samp",null,i(e.max_rtt),1)])]),t("td",null,[e.geo.city&&e.geo.country?(l(),o("span",q,[t("small",null,i(e.geo.city)+", "+i(e.geo.country),1)])):(l(),o("span",J," - "))])]))),256))])])])])):(l(),o("div",z,[s[5]||(s[5]=t("div",{class:"pingPlaceholder bg-body-secondary rounded-3 mb-3",style:{height:"300px !important"}},null,-1)),(l(),o(u,null,m(5,e=>t("div",{class:k(["pingPlaceholder bg-body-secondary rounded-3 mb-3",{"animate__animated animate__flash animate__slower animate__infinite":this.tracing}]),style:T({"animation-delay":`${e*.05}s`})},null,6)),64))]))]),_:1})])])])}const lt=h(R,[["render",Q],["__scopeId","data-v-3e75b4d4"]]);export{lt as default}; +import{_ as h,W as g,g as b,c as o,b as t,d as n,m as y,y as f,C as x,w as r,j as c,a as l,f as v,F as u,h as m,n as k,s as T,t as i,k as _}from"./index-AzYVPyhh.js";import{O as A}from"./osmap-iyZf8b7y.js";import{L as w}from"./localeText-qJNpKS91.js";const R={name:"traceroute",components:{LocaleText:w,OSMap:A},data(){return{tracing:!1,ipAddress:void 0,tracerouteResult:void 0}},setup(){return{store:g()}},methods:{execute(){this.ipAddress&&(this.tracing=!0,this.tracerouteResult=void 0,b("/api/traceroute/execute",{ipAddress:this.ipAddress},d=>{d.status?this.tracerouteResult=d.data:this.store.newMessage("Server",d.message,"danger"),this.tracing=!1}))}}},M={class:"mt-md-5 mt-3 text-body"},S={class:"container-md"},$={class:"mb-3 text-body"},C={class:"d-flex gap-2 mb-3 flex-column"},L={class:"flex-grow-1"},P={class:"mb-1 text-muted",for:"ipAddress"},O=["disabled"],V=["disabled"],B={key:0,class:"d-block"},I={key:1,class:"d-block"},N={class:"position-relative"},z={key:"pingPlaceholder"},D={key:1},E={key:"table",class:"w-100 mt-2"},F={class:"table table-sm rounded-3 w-100"},G={scope:"col"},H={scope:"col"},K={scope:"col"},W={scope:"col"},j={scope:"col"},U={scope:"col"},q={key:0},J={key:1};function Q(d,s,X,Y,Z,tt){const a=_("LocaleText"),p=_("OSMap");return l(),o("div",M,[t("div",S,[t("h3",$,[n(a,{t:"Traceroute"})]),t("div",C,[t("div",L,[t("label",P,[t("small",null,[n(a,{t:"Enter IP Address / Hostname"})])]),y(t("input",{disabled:this.tracing,id:"ipAddress",class:"form-control rounded-3","onUpdate:modelValue":s[0]||(s[0]=e=>this.ipAddress=e),onKeyup:s[1]||(s[1]=x(e=>this.execute(),["enter"])),type:"text"},null,40,O),[[f,this.ipAddress]])]),t("button",{class:"btn btn-primary rounded-3 position-relative flex-grow-1",disabled:this.tracing||!this.ipAddress,onClick:s[2]||(s[2]=e=>this.execute())},[n(c,{name:"slide"},{default:r(()=>[this.tracing?(l(),o("span",I,s[4]||(s[4]=[t("span",{class:"spinner-border spinner-border-sm","aria-hidden":"true"},null,-1),t("span",{class:"visually-hidden",role:"status"},"Loading...",-1)]))):(l(),o("span",B,s[3]||(s[3]=[t("i",{class:"bi bi-person-walking me-2"},null,-1),v("Trace! ")])))]),_:1})],8,V)]),t("div",N,[n(c,{name:"ping"},{default:r(()=>[this.tracerouteResult?(l(),o("div",D,[n(p,{d:this.tracerouteResult,type:"traceroute"},null,8,["d"]),t("div",E,[t("table",F,[t("thead",null,[t("tr",null,[t("th",G,[n(a,{t:"Hop"})]),t("th",H,[n(a,{t:"IP Address"})]),t("th",K,[n(a,{t:"Average RTT (ms)"})]),t("th",W,[n(a,{t:"Min RTT (ms)"})]),t("th",j,[n(a,{t:"Max RTT (ms)"})]),t("th",U,[n(a,{t:"Geolocation"})])])]),t("tbody",null,[(l(!0),o(u,null,m(this.tracerouteResult,(e,et)=>(l(),o("tr",null,[t("td",null,[t("small",null,i(e.hop),1)]),t("td",null,[t("small",null,[t("samp",null,i(e.ip),1)])]),t("td",null,[t("small",null,[t("samp",null,i(e.avg_rtt),1)])]),t("td",null,[t("small",null,[t("samp",null,i(e.min_rtt),1)])]),t("td",null,[t("small",null,[t("samp",null,i(e.max_rtt),1)])]),t("td",null,[e.geo.city&&e.geo.country?(l(),o("span",q,[t("small",null,i(e.geo.city)+", "+i(e.geo.country),1)])):(l(),o("span",J," - "))])]))),256))])])])])):(l(),o("div",z,[s[5]||(s[5]=t("div",{class:"pingPlaceholder bg-body-secondary rounded-3 mb-3",style:{height:"300px !important"}},null,-1)),(l(),o(u,null,m(5,e=>t("div",{class:k(["pingPlaceholder bg-body-secondary rounded-3 mb-3",{"animate__animated animate__flash animate__slower animate__infinite":this.tracing}]),style:T({"animation-delay":`${e*.05}s`})},null,6)),64))]))]),_:1})])])])}const lt=h(R,[["render",Q],["__scopeId","data-v-3e75b4d4"]]);export{lt as default}; diff --git a/src/static/app/dist/assets/vue-datepicker-BZlVex04.js b/src/static/app/dist/assets/vue-datepicker-Co-zpMN6.js similarity index 99% rename from src/static/app/dist/assets/vue-datepicker-BZlVex04.js rename to src/static/app/dist/assets/vue-datepicker-Co-zpMN6.js index ecd9bc1..173dc44 100644 --- a/src/static/app/dist/assets/vue-datepicker-BZlVex04.js +++ b/src/static/app/dist/assets/vue-datepicker-Co-zpMN6.js @@ -1 +1 @@ -import{E as ha,r as Z,P as ze,a5 as qt,a6 as ca,o as Ke,Y as it,V as Ca,H as ct,q as G,a as P,c as W,d as ot,a7 as je,h as Ye,w as _e,a8 as ue,a9 as We,aa as at,u as d,ab as Qe,ac as Pn,i as De,j as ta,e as j,l as Oa,ad as Br,n as ke,b as ye,F as we,s as dt,a4 as va,t as Ge,R as Nr,ae as An,af as Lr,f as Dt,ag as Hr,m as Ma,ah as Da,C as Vr,K as Fr,L as qr}from"./index-CfPziasH.js";function ve(e){const t=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&t==="[object Date]"?new e.constructor(+e):typeof e=="number"||t==="[object Number]"||typeof e=="string"||t==="[object String]"?new Date(e):new Date(NaN)}function Te(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}function mt(e,t){const n=ve(e);return isNaN(t)?Te(e,NaN):(t&&n.setDate(n.getDate()+t),n)}function ft(e,t){const n=ve(e);if(isNaN(t))return Te(e,NaN);if(!t)return n;const a=n.getDate(),r=Te(e,n.getTime());r.setMonth(n.getMonth()+t+1,0);const l=r.getDate();return a>=l?r:(n.setFullYear(r.getFullYear(),r.getMonth(),a),n)}function Xn(e,t){const{years:n=0,months:a=0,weeks:r=0,days:l=0,hours:i=0,minutes:p=0,seconds:c=0}=t,C=ve(e),m=a||n?ft(C,a+n*12):C,v=l||r?mt(m,l+r*7):m,h=p+i*60,Y=(c+h*60)*1e3;return Te(e,v.getTime()+Y)}function Wr(e,t){const n=+ve(e);return Te(e,n+t)}const Gn=6048e5,Qr=864e5,zr=6e4,jn=36e5,Ur=1e3;function Xr(e,t){return Wr(e,t*jn)}let Gr={};function Wt(){return Gr}function ht(e,t){const n=Wt(),a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,r=ve(e),l=r.getDay(),i=(l=r.getTime()?n+1:t.getTime()>=i.getTime()?n:n-1}function Cn(e){const t=ve(e);return t.setHours(0,0,0,0),t}function Ta(e){const t=ve(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function Jn(e,t){const n=Cn(e),a=Cn(t),r=+n-Ta(n),l=+a-Ta(a);return Math.round((r-l)/Qr)}function jr(e){const t=Kn(e),n=Te(e,0);return n.setFullYear(t,0,4),n.setHours(0,0,0,0),Gt(n)}function Kr(e,t){const n=t*3;return ft(e,n)}function un(e,t){return ft(e,t*12)}function On(e,t){const n=ve(e),a=ve(t),r=n.getTime()-a.getTime();return r<0?-1:r>0?1:r}function Zn(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function ua(e){if(!Zn(e)&&typeof e!="number")return!1;const t=ve(e);return!isNaN(Number(t))}function $n(e){const t=ve(e);return Math.trunc(t.getMonth()/3)+1}function Jr(e,t){const n=ve(e),a=ve(t);return n.getFullYear()-a.getFullYear()}function Zr(e,t){const n=ve(e),a=ve(t),r=On(n,a),l=Math.abs(Jr(n,a));n.setFullYear(1584),a.setFullYear(1584);const i=On(n,a)===-r,p=r*(l-+i);return p===0?0:p}function er(e,t){const n=ve(e.start),a=ve(e.end);let r=+n>+a;const l=r?+n:+a,i=r?a:n;i.setHours(0,0,0,0);let p=1;const c=[];for(;+i<=l;)c.push(ve(i)),i.setDate(i.getDate()+p),i.setHours(0,0,0,0);return r?c.reverse():c}function Ht(e){const t=ve(e),n=t.getMonth(),a=n-n%3;return t.setMonth(a,1),t.setHours(0,0,0,0),t}function el(e,t){const n=ve(e.start),a=ve(e.end);let r=+n>+a;const l=r?+Ht(n):+Ht(a);let i=Ht(r?a:n),p=1;const c=[];for(;+i<=l;)c.push(ve(i)),i=Kr(i,p);return r?c.reverse():c}function tl(e){const t=ve(e);return t.setDate(1),t.setHours(0,0,0,0),t}function tr(e){const t=ve(e),n=t.getFullYear();return t.setFullYear(n+1,0,0),t.setHours(23,59,59,999),t}function ma(e){const t=ve(e),n=Te(e,0);return n.setFullYear(t.getFullYear(),0,1),n.setHours(0,0,0,0),n}function ar(e,t){const n=Wt(),a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,r=ve(e),l=r.getDay(),i=(l{let a;const r=al[e];return typeof r=="string"?a=r:t===1?a=r.one:a=r.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+a:a+" ago":a};function Wa(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const rl={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},ll={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},ol={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},il={date:Wa({formats:rl,defaultWidth:"full"}),time:Wa({formats:ll,defaultWidth:"full"}),dateTime:Wa({formats:ol,defaultWidth:"full"})},sl={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},ul=(e,t,n,a)=>sl[e];function oa(e){return(t,n)=>{const a=n?.context?String(n.context):"standalone";let r;if(a==="formatting"&&e.formattingValues){const i=e.defaultFormattingWidth||e.defaultWidth,p=n?.width?String(n.width):i;r=e.formattingValues[p]||e.formattingValues[i]}else{const i=e.defaultWidth,p=n?.width?String(n.width):e.defaultWidth;r=e.values[p]||e.values[i]}const l=e.argumentCallback?e.argumentCallback(t):t;return r[l]}}const dl={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},cl={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},vl={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},ml={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},pl={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},fl={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},hl=(e,t)=>{const n=Number(e),a=n%100;if(a>20||a<10)switch(a%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},yl={ordinalNumber:hl,era:oa({values:dl,defaultWidth:"wide"}),quarter:oa({values:cl,defaultWidth:"wide",argumentCallback:e=>e-1}),month:oa({values:vl,defaultWidth:"wide"}),day:oa({values:ml,defaultWidth:"wide"}),dayPeriod:oa({values:pl,defaultWidth:"wide",formattingValues:fl,defaultFormattingWidth:"wide"})};function ia(e){return(t,n={})=>{const a=n.width,r=a&&e.matchPatterns[a]||e.matchPatterns[e.defaultMatchWidth],l=t.match(r);if(!l)return null;const i=l[0],p=a&&e.parsePatterns[a]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(p)?bl(p,v=>v.test(i)):gl(p,v=>v.test(i));let C;C=e.valueCallback?e.valueCallback(c):c,C=n.valueCallback?n.valueCallback(C):C;const m=t.slice(i.length);return{value:C,rest:m}}}function gl(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function bl(e,t){for(let n=0;n{const a=t.match(e.matchPattern);if(!a)return null;const r=a[0],l=t.match(e.parsePattern);if(!l)return null;let i=e.valueCallback?e.valueCallback(l[0]):l[0];i=n.valueCallback?n.valueCallback(i):i;const p=t.slice(r.length);return{value:i,rest:p}}}const _l=/^(\d+)(th|st|nd|rd)?/i,kl=/\d+/i,xl={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},Ml={any:[/^b/i,/^(a|c)/i]},Dl={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Tl={any:[/1/i,/2/i,/3/i,/4/i]},Pl={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},Al={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Cl={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},Ol={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},$l={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},Yl={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},Sl={ordinalNumber:wl({matchPattern:_l,parsePattern:kl,valueCallback:e=>parseInt(e,10)}),era:ia({matchPatterns:xl,defaultMatchWidth:"wide",parsePatterns:Ml,defaultParseWidth:"any"}),quarter:ia({matchPatterns:Dl,defaultMatchWidth:"wide",parsePatterns:Tl,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ia({matchPatterns:Pl,defaultMatchWidth:"wide",parsePatterns:Al,defaultParseWidth:"any"}),day:ia({matchPatterns:Cl,defaultMatchWidth:"wide",parsePatterns:Ol,defaultParseWidth:"any"}),dayPeriod:ia({matchPatterns:$l,defaultMatchWidth:"any",parsePatterns:Yl,defaultParseWidth:"any"})},nr={code:"en-US",formatDistance:nl,formatLong:il,formatRelative:ul,localize:yl,match:Sl,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Rl(e){const t=ve(e);return Jn(t,ma(t))+1}function dn(e){const t=ve(e),n=+Gt(t)-+jr(t);return Math.round(n/Gn)+1}function cn(e,t){const n=ve(e),a=n.getFullYear(),r=Wt(),l=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,i=Te(e,0);i.setFullYear(a+1,0,l),i.setHours(0,0,0,0);const p=ht(i,t),c=Te(e,0);c.setFullYear(a,0,l),c.setHours(0,0,0,0);const C=ht(c,t);return n.getTime()>=p.getTime()?a+1:n.getTime()>=C.getTime()?a:a-1}function Il(e,t){const n=Wt(),a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,r=cn(e,t),l=Te(e,0);return l.setFullYear(r,0,a),l.setHours(0,0,0,0),ht(l,t)}function vn(e,t){const n=ve(e),a=+ht(n,t)-+Il(n,t);return Math.round(a/Gn)+1}function Ae(e,t){const n=e<0?"-":"",a=Math.abs(e).toString().padStart(t,"0");return n+a}const Ct={y(e,t){const n=e.getFullYear(),a=n>0?n:1-n;return Ae(t==="yy"?a%100:a,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):Ae(n+1,2)},d(e,t){return Ae(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return n==="am"?"a.m.":"p.m."}},h(e,t){return Ae(e.getHours()%12||12,t.length)},H(e,t){return Ae(e.getHours(),t.length)},m(e,t){return Ae(e.getMinutes(),t.length)},s(e,t){return Ae(e.getSeconds(),t.length)},S(e,t){const n=t.length,a=e.getMilliseconds(),r=Math.trunc(a*Math.pow(10,n-3));return Ae(r,t.length)}},Qt={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Sn={G:function(e,t,n){const a=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(a,{width:"abbreviated"});case"GGGGG":return n.era(a,{width:"narrow"});case"GGGG":default:return n.era(a,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const a=e.getFullYear(),r=a>0?a:1-a;return n.ordinalNumber(r,{unit:"year"})}return Ct.y(e,t)},Y:function(e,t,n,a){const r=cn(e,a),l=r>0?r:1-r;if(t==="YY"){const i=l%100;return Ae(i,2)}return t==="Yo"?n.ordinalNumber(l,{unit:"year"}):Ae(l,t.length)},R:function(e,t){const n=Kn(e);return Ae(n,t.length)},u:function(e,t){const n=e.getFullYear();return Ae(n,t.length)},Q:function(e,t,n){const a=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(a);case"QQ":return Ae(a,2);case"Qo":return n.ordinalNumber(a,{unit:"quarter"});case"QQQ":return n.quarter(a,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(a,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(a,{width:"wide",context:"formatting"})}},q:function(e,t,n){const a=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(a);case"qq":return Ae(a,2);case"qo":return n.ordinalNumber(a,{unit:"quarter"});case"qqq":return n.quarter(a,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(a,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(a,{width:"wide",context:"standalone"})}},M:function(e,t,n){const a=e.getMonth();switch(t){case"M":case"MM":return Ct.M(e,t);case"Mo":return n.ordinalNumber(a+1,{unit:"month"});case"MMM":return n.month(a,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(a,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(a,{width:"wide",context:"formatting"})}},L:function(e,t,n){const a=e.getMonth();switch(t){case"L":return String(a+1);case"LL":return Ae(a+1,2);case"Lo":return n.ordinalNumber(a+1,{unit:"month"});case"LLL":return n.month(a,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(a,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(a,{width:"wide",context:"standalone"})}},w:function(e,t,n,a){const r=vn(e,a);return t==="wo"?n.ordinalNumber(r,{unit:"week"}):Ae(r,t.length)},I:function(e,t,n){const a=dn(e);return t==="Io"?n.ordinalNumber(a,{unit:"week"}):Ae(a,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):Ct.d(e,t)},D:function(e,t,n){const a=Rl(e);return t==="Do"?n.ordinalNumber(a,{unit:"dayOfYear"}):Ae(a,t.length)},E:function(e,t,n){const a=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(a,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(a,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(a,{width:"short",context:"formatting"});case"EEEE":default:return n.day(a,{width:"wide",context:"formatting"})}},e:function(e,t,n,a){const r=e.getDay(),l=(r-a.weekStartsOn+8)%7||7;switch(t){case"e":return String(l);case"ee":return Ae(l,2);case"eo":return n.ordinalNumber(l,{unit:"day"});case"eee":return n.day(r,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(r,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(r,{width:"short",context:"formatting"});case"eeee":default:return n.day(r,{width:"wide",context:"formatting"})}},c:function(e,t,n,a){const r=e.getDay(),l=(r-a.weekStartsOn+8)%7||7;switch(t){case"c":return String(l);case"cc":return Ae(l,t.length);case"co":return n.ordinalNumber(l,{unit:"day"});case"ccc":return n.day(r,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(r,{width:"narrow",context:"standalone"});case"cccccc":return n.day(r,{width:"short",context:"standalone"});case"cccc":default:return n.day(r,{width:"wide",context:"standalone"})}},i:function(e,t,n){const a=e.getDay(),r=a===0?7:a;switch(t){case"i":return String(r);case"ii":return Ae(r,t.length);case"io":return n.ordinalNumber(r,{unit:"day"});case"iii":return n.day(a,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(a,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(a,{width:"short",context:"formatting"});case"iiii":default:return n.day(a,{width:"wide",context:"formatting"})}},a:function(e,t,n){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(e,t,n){const a=e.getHours();let r;switch(a===12?r=Qt.noon:a===0?r=Qt.midnight:r=a/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,n){const a=e.getHours();let r;switch(a>=17?r=Qt.evening:a>=12?r=Qt.afternoon:a>=4?r=Qt.morning:r=Qt.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let a=e.getHours()%12;return a===0&&(a=12),n.ordinalNumber(a,{unit:"hour"})}return Ct.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):Ct.H(e,t)},K:function(e,t,n){const a=e.getHours()%12;return t==="Ko"?n.ordinalNumber(a,{unit:"hour"}):Ae(a,t.length)},k:function(e,t,n){let a=e.getHours();return a===0&&(a=24),t==="ko"?n.ordinalNumber(a,{unit:"hour"}):Ae(a,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):Ct.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):Ct.s(e,t)},S:function(e,t){return Ct.S(e,t)},X:function(e,t,n){const a=e.getTimezoneOffset();if(a===0)return"Z";switch(t){case"X":return In(a);case"XXXX":case"XX":return Nt(a);case"XXXXX":case"XXX":default:return Nt(a,":")}},x:function(e,t,n){const a=e.getTimezoneOffset();switch(t){case"x":return In(a);case"xxxx":case"xx":return Nt(a);case"xxxxx":case"xxx":default:return Nt(a,":")}},O:function(e,t,n){const a=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Rn(a,":");case"OOOO":default:return"GMT"+Nt(a,":")}},z:function(e,t,n){const a=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Rn(a,":");case"zzzz":default:return"GMT"+Nt(a,":")}},t:function(e,t,n){const a=Math.trunc(e.getTime()/1e3);return Ae(a,t.length)},T:function(e,t,n){const a=e.getTime();return Ae(a,t.length)}};function Rn(e,t=""){const n=e>0?"-":"+",a=Math.abs(e),r=Math.trunc(a/60),l=a%60;return l===0?n+String(r):n+String(r)+t+Ae(l,2)}function In(e,t){return e%60===0?(e>0?"-":"+")+Ae(Math.abs(e)/60,2):Nt(e,t)}function Nt(e,t=""){const n=e>0?"-":"+",a=Math.abs(e),r=Ae(Math.trunc(a/60),2),l=Ae(a%60,2);return n+r+t+l}const En=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},rr=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},El=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],a=n[1],r=n[2];if(!r)return En(e,t);let l;switch(a){case"P":l=t.dateTime({width:"short"});break;case"PP":l=t.dateTime({width:"medium"});break;case"PPP":l=t.dateTime({width:"long"});break;case"PPPP":default:l=t.dateTime({width:"full"});break}return l.replace("{{date}}",En(a,t)).replace("{{time}}",rr(r,t))},an={p:rr,P:El},Bl=/^D+$/,Nl=/^Y+$/,Ll=["D","DD","YY","YYYY"];function lr(e){return Bl.test(e)}function or(e){return Nl.test(e)}function nn(e,t,n){const a=Hl(e,t,n);if(console.warn(a),Ll.includes(e))throw new RangeError(a)}function Hl(e,t,n){const a=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${a} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Vl=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Fl=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,ql=/^'([^]*?)'?$/,Wl=/''/g,Ql=/[a-zA-Z]/;function kt(e,t,n){const a=Wt(),r=n?.locale??a.locale??nr,l=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??a.firstWeekContainsDate??a.locale?.options?.firstWeekContainsDate??1,i=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??a.weekStartsOn??a.locale?.options?.weekStartsOn??0,p=ve(e);if(!ua(p))throw new RangeError("Invalid time value");let c=t.match(Fl).map(m=>{const v=m[0];if(v==="p"||v==="P"){const h=an[v];return h(m,r.formatLong)}return m}).join("").match(Vl).map(m=>{if(m==="''")return{isToken:!1,value:"'"};const v=m[0];if(v==="'")return{isToken:!1,value:zl(m)};if(Sn[v])return{isToken:!0,value:m};if(v.match(Ql))throw new RangeError("Format string contains an unescaped latin alphabet character `"+v+"`");return{isToken:!1,value:m}});r.localize.preprocessor&&(c=r.localize.preprocessor(p,c));const C={firstWeekContainsDate:l,weekStartsOn:i,locale:r};return c.map(m=>{if(!m.isToken)return m.value;const v=m.value;(!n?.useAdditionalWeekYearTokens&&or(v)||!n?.useAdditionalDayOfYearTokens&&lr(v))&&nn(v,t,String(e));const h=Sn[v[0]];return h(p,v,r.localize,C)}).join("")}function zl(e){const t=e.match(ql);return t?t[1].replace(Wl,"'"):e}function Ul(e){return ve(e).getDay()}function Xl(e){const t=ve(e),n=t.getFullYear(),a=t.getMonth(),r=Te(e,0);return r.setFullYear(n,a+1,0),r.setHours(0,0,0,0),r.getDate()}function Gl(){return Object.assign({},Wt())}function Tt(e){return ve(e).getHours()}function jl(e){let n=ve(e).getDay();return n===0&&(n=7),n}function Rt(e){return ve(e).getMinutes()}function xe(e){return ve(e).getMonth()}function jt(e){return ve(e).getSeconds()}function he(e){return ve(e).getFullYear()}function Kt(e,t){const n=ve(e),a=ve(t);return n.getTime()>a.getTime()}function pa(e,t){const n=ve(e),a=ve(t);return+n<+a}function Xt(e,t){const n=ve(e),a=ve(t);return+n==+a}function Kl(e,t){const n=t instanceof Date?Te(t,0):new t(0);return n.setFullYear(e.getFullYear(),e.getMonth(),e.getDate()),n.setHours(e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()),n}const Jl=10;class ir{subPriority=0;validate(t,n){return!0}}class Zl extends ir{constructor(t,n,a,r,l){super(),this.value=t,this.validateValue=n,this.setValue=a,this.priority=r,l&&(this.subPriority=l)}validate(t,n){return this.validateValue(t,this.value,n)}set(t,n,a){return this.setValue(t,n,this.value,a)}}class eo extends ir{priority=Jl;subPriority=-1;set(t,n){return n.timestampIsSet?t:Te(t,Kl(t,Date))}}class Pe{run(t,n,a,r){const l=this.parse(t,n,a,r);return l?{setter:new Zl(l.value,this.validate,this.set,this.priority,this.subPriority),rest:l.rest}:null}validate(t,n,a){return!0}}class to extends Pe{priority=140;parse(t,n,a){switch(n){case"G":case"GG":case"GGG":return a.era(t,{width:"abbreviated"})||a.era(t,{width:"narrow"});case"GGGGG":return a.era(t,{width:"narrow"});case"GGGG":default:return a.era(t,{width:"wide"})||a.era(t,{width:"abbreviated"})||a.era(t,{width:"narrow"})}}set(t,n,a){return n.era=a,t.setFullYear(a,0,1),t.setHours(0,0,0,0),t}incompatibleTokens=["R","u","t","T"]}const Le={month:/^(1[0-2]|0?\d)/,date:/^(3[0-1]|[0-2]?\d)/,dayOfYear:/^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,week:/^(5[0-3]|[0-4]?\d)/,hour23h:/^(2[0-3]|[0-1]?\d)/,hour24h:/^(2[0-4]|[0-1]?\d)/,hour11h:/^(1[0-1]|0?\d)/,hour12h:/^(1[0-2]|0?\d)/,minute:/^[0-5]?\d/,second:/^[0-5]?\d/,singleDigit:/^\d/,twoDigits:/^\d{1,2}/,threeDigits:/^\d{1,3}/,fourDigits:/^\d{1,4}/,anyDigitsSigned:/^-?\d+/,singleDigitSigned:/^-?\d/,twoDigitsSigned:/^-?\d{1,2}/,threeDigitsSigned:/^-?\d{1,3}/,fourDigitsSigned:/^-?\d{1,4}/},bt={basicOptionalMinutes:/^([+-])(\d{2})(\d{2})?|Z/,basic:/^([+-])(\d{2})(\d{2})|Z/,basicOptionalSeconds:/^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,extended:/^([+-])(\d{2}):(\d{2})|Z/,extendedOptionalSeconds:/^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/};function He(e,t){return e&&{value:t(e.value),rest:e.rest}}function Re(e,t){const n=t.match(e);return n?{value:parseInt(n[0],10),rest:t.slice(n[0].length)}:null}function wt(e,t){const n=t.match(e);if(!n)return null;if(n[0]==="Z")return{value:0,rest:t.slice(1)};const a=n[1]==="+"?1:-1,r=n[2]?parseInt(n[2],10):0,l=n[3]?parseInt(n[3],10):0,i=n[5]?parseInt(n[5],10):0;return{value:a*(r*jn+l*zr+i*Ur),rest:t.slice(n[0].length)}}function sr(e){return Re(Le.anyDigitsSigned,e)}function Ee(e,t){switch(e){case 1:return Re(Le.singleDigit,t);case 2:return Re(Le.twoDigits,t);case 3:return Re(Le.threeDigits,t);case 4:return Re(Le.fourDigits,t);default:return Re(new RegExp("^\\d{1,"+e+"}"),t)}}function Pa(e,t){switch(e){case 1:return Re(Le.singleDigitSigned,t);case 2:return Re(Le.twoDigitsSigned,t);case 3:return Re(Le.threeDigitsSigned,t);case 4:return Re(Le.fourDigitsSigned,t);default:return Re(new RegExp("^-?\\d{1,"+e+"}"),t)}}function mn(e){switch(e){case"morning":return 4;case"evening":return 17;case"pm":case"noon":case"afternoon":return 12;case"am":case"midnight":case"night":default:return 0}}function ur(e,t){const n=t>0,a=n?t:1-t;let r;if(a<=50)r=e||100;else{const l=a+50,i=Math.trunc(l/100)*100,p=e>=l%100;r=e+i-(p?100:0)}return n?r:1-r}function dr(e){return e%400===0||e%4===0&&e%100!==0}class ao extends Pe{priority=130;incompatibleTokens=["Y","R","u","w","I","i","e","c","t","T"];parse(t,n,a){const r=l=>({year:l,isTwoDigitYear:n==="yy"});switch(n){case"y":return He(Ee(4,t),r);case"yo":return He(a.ordinalNumber(t,{unit:"year"}),r);default:return He(Ee(n.length,t),r)}}validate(t,n){return n.isTwoDigitYear||n.year>0}set(t,n,a){const r=t.getFullYear();if(a.isTwoDigitYear){const i=ur(a.year,r);return t.setFullYear(i,0,1),t.setHours(0,0,0,0),t}const l=!("era"in n)||n.era===1?a.year:1-a.year;return t.setFullYear(l,0,1),t.setHours(0,0,0,0),t}}class no extends Pe{priority=130;parse(t,n,a){const r=l=>({year:l,isTwoDigitYear:n==="YY"});switch(n){case"Y":return He(Ee(4,t),r);case"Yo":return He(a.ordinalNumber(t,{unit:"year"}),r);default:return He(Ee(n.length,t),r)}}validate(t,n){return n.isTwoDigitYear||n.year>0}set(t,n,a,r){const l=cn(t,r);if(a.isTwoDigitYear){const p=ur(a.year,l);return t.setFullYear(p,0,r.firstWeekContainsDate),t.setHours(0,0,0,0),ht(t,r)}const i=!("era"in n)||n.era===1?a.year:1-a.year;return t.setFullYear(i,0,r.firstWeekContainsDate),t.setHours(0,0,0,0),ht(t,r)}incompatibleTokens=["y","R","u","Q","q","M","L","I","d","D","i","t","T"]}class ro extends Pe{priority=130;parse(t,n){return Pa(n==="R"?4:n.length,t)}set(t,n,a){const r=Te(t,0);return r.setFullYear(a,0,4),r.setHours(0,0,0,0),Gt(r)}incompatibleTokens=["G","y","Y","u","Q","q","M","L","w","d","D","e","c","t","T"]}class lo extends Pe{priority=130;parse(t,n){return Pa(n==="u"?4:n.length,t)}set(t,n,a){return t.setFullYear(a,0,1),t.setHours(0,0,0,0),t}incompatibleTokens=["G","y","Y","R","w","I","i","e","c","t","T"]}class oo extends Pe{priority=120;parse(t,n,a){switch(n){case"Q":case"QQ":return Ee(n.length,t);case"Qo":return a.ordinalNumber(t,{unit:"quarter"});case"QQQ":return a.quarter(t,{width:"abbreviated",context:"formatting"})||a.quarter(t,{width:"narrow",context:"formatting"});case"QQQQQ":return a.quarter(t,{width:"narrow",context:"formatting"});case"QQQQ":default:return a.quarter(t,{width:"wide",context:"formatting"})||a.quarter(t,{width:"abbreviated",context:"formatting"})||a.quarter(t,{width:"narrow",context:"formatting"})}}validate(t,n){return n>=1&&n<=4}set(t,n,a){return t.setMonth((a-1)*3,1),t.setHours(0,0,0,0),t}incompatibleTokens=["Y","R","q","M","L","w","I","d","D","i","e","c","t","T"]}class io extends Pe{priority=120;parse(t,n,a){switch(n){case"q":case"qq":return Ee(n.length,t);case"qo":return a.ordinalNumber(t,{unit:"quarter"});case"qqq":return a.quarter(t,{width:"abbreviated",context:"standalone"})||a.quarter(t,{width:"narrow",context:"standalone"});case"qqqqq":return a.quarter(t,{width:"narrow",context:"standalone"});case"qqqq":default:return a.quarter(t,{width:"wide",context:"standalone"})||a.quarter(t,{width:"abbreviated",context:"standalone"})||a.quarter(t,{width:"narrow",context:"standalone"})}}validate(t,n){return n>=1&&n<=4}set(t,n,a){return t.setMonth((a-1)*3,1),t.setHours(0,0,0,0),t}incompatibleTokens=["Y","R","Q","M","L","w","I","d","D","i","e","c","t","T"]}class so extends Pe{incompatibleTokens=["Y","R","q","Q","L","w","I","D","i","e","c","t","T"];priority=110;parse(t,n,a){const r=l=>l-1;switch(n){case"M":return He(Re(Le.month,t),r);case"MM":return He(Ee(2,t),r);case"Mo":return He(a.ordinalNumber(t,{unit:"month"}),r);case"MMM":return a.month(t,{width:"abbreviated",context:"formatting"})||a.month(t,{width:"narrow",context:"formatting"});case"MMMMM":return a.month(t,{width:"narrow",context:"formatting"});case"MMMM":default:return a.month(t,{width:"wide",context:"formatting"})||a.month(t,{width:"abbreviated",context:"formatting"})||a.month(t,{width:"narrow",context:"formatting"})}}validate(t,n){return n>=0&&n<=11}set(t,n,a){return t.setMonth(a,1),t.setHours(0,0,0,0),t}}class uo extends Pe{priority=110;parse(t,n,a){const r=l=>l-1;switch(n){case"L":return He(Re(Le.month,t),r);case"LL":return He(Ee(2,t),r);case"Lo":return He(a.ordinalNumber(t,{unit:"month"}),r);case"LLL":return a.month(t,{width:"abbreviated",context:"standalone"})||a.month(t,{width:"narrow",context:"standalone"});case"LLLLL":return a.month(t,{width:"narrow",context:"standalone"});case"LLLL":default:return a.month(t,{width:"wide",context:"standalone"})||a.month(t,{width:"abbreviated",context:"standalone"})||a.month(t,{width:"narrow",context:"standalone"})}}validate(t,n){return n>=0&&n<=11}set(t,n,a){return t.setMonth(a,1),t.setHours(0,0,0,0),t}incompatibleTokens=["Y","R","q","Q","M","w","I","D","i","e","c","t","T"]}function co(e,t,n){const a=ve(e),r=vn(a,n)-t;return a.setDate(a.getDate()-r*7),a}class vo extends Pe{priority=100;parse(t,n,a){switch(n){case"w":return Re(Le.week,t);case"wo":return a.ordinalNumber(t,{unit:"week"});default:return Ee(n.length,t)}}validate(t,n){return n>=1&&n<=53}set(t,n,a,r){return ht(co(t,a,r),r)}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","i","t","T"]}function mo(e,t){const n=ve(e),a=dn(n)-t;return n.setDate(n.getDate()-a*7),n}class po extends Pe{priority=100;parse(t,n,a){switch(n){case"I":return Re(Le.week,t);case"Io":return a.ordinalNumber(t,{unit:"week"});default:return Ee(n.length,t)}}validate(t,n){return n>=1&&n<=53}set(t,n,a){return Gt(mo(t,a))}incompatibleTokens=["y","Y","u","q","Q","M","L","w","d","D","e","c","t","T"]}const fo=[31,28,31,30,31,30,31,31,30,31,30,31],ho=[31,29,31,30,31,30,31,31,30,31,30,31];class yo extends Pe{priority=90;subPriority=1;parse(t,n,a){switch(n){case"d":return Re(Le.date,t);case"do":return a.ordinalNumber(t,{unit:"date"});default:return Ee(n.length,t)}}validate(t,n){const a=t.getFullYear(),r=dr(a),l=t.getMonth();return r?n>=1&&n<=ho[l]:n>=1&&n<=fo[l]}set(t,n,a){return t.setDate(a),t.setHours(0,0,0,0),t}incompatibleTokens=["Y","R","q","Q","w","I","D","i","e","c","t","T"]}class go extends Pe{priority=90;subpriority=1;parse(t,n,a){switch(n){case"D":case"DD":return Re(Le.dayOfYear,t);case"Do":return a.ordinalNumber(t,{unit:"date"});default:return Ee(n.length,t)}}validate(t,n){const a=t.getFullYear();return dr(a)?n>=1&&n<=366:n>=1&&n<=365}set(t,n,a){return t.setMonth(0,a),t.setHours(0,0,0,0),t}incompatibleTokens=["Y","R","q","Q","M","L","w","I","d","E","i","e","c","t","T"]}function pn(e,t,n){const a=Wt(),r=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??a.weekStartsOn??a.locale?.options?.weekStartsOn??0,l=ve(e),i=l.getDay(),c=(t%7+7)%7,C=7-r,m=t<0||t>6?t-(i+C)%7:(c+C)%7-(i+C)%7;return mt(l,m)}class bo extends Pe{priority=90;parse(t,n,a){switch(n){case"E":case"EE":case"EEE":return a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"});case"EEEEE":return a.day(t,{width:"narrow",context:"formatting"});case"EEEEEE":return a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"});case"EEEE":default:return a.day(t,{width:"wide",context:"formatting"})||a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"})}}validate(t,n){return n>=0&&n<=6}set(t,n,a,r){return t=pn(t,a,r),t.setHours(0,0,0,0),t}incompatibleTokens=["D","i","e","c","t","T"]}class wo extends Pe{priority=90;parse(t,n,a,r){const l=i=>{const p=Math.floor((i-1)/7)*7;return(i+r.weekStartsOn+6)%7+p};switch(n){case"e":case"ee":return He(Ee(n.length,t),l);case"eo":return He(a.ordinalNumber(t,{unit:"day"}),l);case"eee":return a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"});case"eeeee":return a.day(t,{width:"narrow",context:"formatting"});case"eeeeee":return a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"});case"eeee":default:return a.day(t,{width:"wide",context:"formatting"})||a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"})}}validate(t,n){return n>=0&&n<=6}set(t,n,a,r){return t=pn(t,a,r),t.setHours(0,0,0,0),t}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","E","i","c","t","T"]}class _o extends Pe{priority=90;parse(t,n,a,r){const l=i=>{const p=Math.floor((i-1)/7)*7;return(i+r.weekStartsOn+6)%7+p};switch(n){case"c":case"cc":return He(Ee(n.length,t),l);case"co":return He(a.ordinalNumber(t,{unit:"day"}),l);case"ccc":return a.day(t,{width:"abbreviated",context:"standalone"})||a.day(t,{width:"short",context:"standalone"})||a.day(t,{width:"narrow",context:"standalone"});case"ccccc":return a.day(t,{width:"narrow",context:"standalone"});case"cccccc":return a.day(t,{width:"short",context:"standalone"})||a.day(t,{width:"narrow",context:"standalone"});case"cccc":default:return a.day(t,{width:"wide",context:"standalone"})||a.day(t,{width:"abbreviated",context:"standalone"})||a.day(t,{width:"short",context:"standalone"})||a.day(t,{width:"narrow",context:"standalone"})}}validate(t,n){return n>=0&&n<=6}set(t,n,a,r){return t=pn(t,a,r),t.setHours(0,0,0,0),t}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","E","i","e","t","T"]}function ko(e,t){const n=ve(e),a=jl(n),r=t-a;return mt(n,r)}class xo extends Pe{priority=90;parse(t,n,a){const r=l=>l===0?7:l;switch(n){case"i":case"ii":return Ee(n.length,t);case"io":return a.ordinalNumber(t,{unit:"day"});case"iii":return He(a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"}),r);case"iiiii":return He(a.day(t,{width:"narrow",context:"formatting"}),r);case"iiiiii":return He(a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"}),r);case"iiii":default:return He(a.day(t,{width:"wide",context:"formatting"})||a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"}),r)}}validate(t,n){return n>=1&&n<=7}set(t,n,a){return t=ko(t,a),t.setHours(0,0,0,0),t}incompatibleTokens=["y","Y","u","q","Q","M","L","w","d","D","E","e","c","t","T"]}class Mo extends Pe{priority=80;parse(t,n,a){switch(n){case"a":case"aa":case"aaa":return a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"});case"aaaaa":return a.dayPeriod(t,{width:"narrow",context:"formatting"});case"aaaa":default:return a.dayPeriod(t,{width:"wide",context:"formatting"})||a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"})}}set(t,n,a){return t.setHours(mn(a),0,0,0),t}incompatibleTokens=["b","B","H","k","t","T"]}class Do extends Pe{priority=80;parse(t,n,a){switch(n){case"b":case"bb":case"bbb":return a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"});case"bbbbb":return a.dayPeriod(t,{width:"narrow",context:"formatting"});case"bbbb":default:return a.dayPeriod(t,{width:"wide",context:"formatting"})||a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"})}}set(t,n,a){return t.setHours(mn(a),0,0,0),t}incompatibleTokens=["a","B","H","k","t","T"]}class To extends Pe{priority=80;parse(t,n,a){switch(n){case"B":case"BB":case"BBB":return a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"});case"BBBBB":return a.dayPeriod(t,{width:"narrow",context:"formatting"});case"BBBB":default:return a.dayPeriod(t,{width:"wide",context:"formatting"})||a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"})}}set(t,n,a){return t.setHours(mn(a),0,0,0),t}incompatibleTokens=["a","b","t","T"]}class Po extends Pe{priority=70;parse(t,n,a){switch(n){case"h":return Re(Le.hour12h,t);case"ho":return a.ordinalNumber(t,{unit:"hour"});default:return Ee(n.length,t)}}validate(t,n){return n>=1&&n<=12}set(t,n,a){const r=t.getHours()>=12;return r&&a<12?t.setHours(a+12,0,0,0):!r&&a===12?t.setHours(0,0,0,0):t.setHours(a,0,0,0),t}incompatibleTokens=["H","K","k","t","T"]}class Ao extends Pe{priority=70;parse(t,n,a){switch(n){case"H":return Re(Le.hour23h,t);case"Ho":return a.ordinalNumber(t,{unit:"hour"});default:return Ee(n.length,t)}}validate(t,n){return n>=0&&n<=23}set(t,n,a){return t.setHours(a,0,0,0),t}incompatibleTokens=["a","b","h","K","k","t","T"]}class Co extends Pe{priority=70;parse(t,n,a){switch(n){case"K":return Re(Le.hour11h,t);case"Ko":return a.ordinalNumber(t,{unit:"hour"});default:return Ee(n.length,t)}}validate(t,n){return n>=0&&n<=11}set(t,n,a){return t.getHours()>=12&&a<12?t.setHours(a+12,0,0,0):t.setHours(a,0,0,0),t}incompatibleTokens=["h","H","k","t","T"]}class Oo extends Pe{priority=70;parse(t,n,a){switch(n){case"k":return Re(Le.hour24h,t);case"ko":return a.ordinalNumber(t,{unit:"hour"});default:return Ee(n.length,t)}}validate(t,n){return n>=1&&n<=24}set(t,n,a){const r=a<=24?a%24:a;return t.setHours(r,0,0,0),t}incompatibleTokens=["a","b","h","H","K","t","T"]}class $o extends Pe{priority=60;parse(t,n,a){switch(n){case"m":return Re(Le.minute,t);case"mo":return a.ordinalNumber(t,{unit:"minute"});default:return Ee(n.length,t)}}validate(t,n){return n>=0&&n<=59}set(t,n,a){return t.setMinutes(a,0,0),t}incompatibleTokens=["t","T"]}class Yo extends Pe{priority=50;parse(t,n,a){switch(n){case"s":return Re(Le.second,t);case"so":return a.ordinalNumber(t,{unit:"second"});default:return Ee(n.length,t)}}validate(t,n){return n>=0&&n<=59}set(t,n,a){return t.setSeconds(a,0),t}incompatibleTokens=["t","T"]}class So extends Pe{priority=30;parse(t,n){const a=r=>Math.trunc(r*Math.pow(10,-n.length+3));return He(Ee(n.length,t),a)}set(t,n,a){return t.setMilliseconds(a),t}incompatibleTokens=["t","T"]}class Ro extends Pe{priority=10;parse(t,n){switch(n){case"X":return wt(bt.basicOptionalMinutes,t);case"XX":return wt(bt.basic,t);case"XXXX":return wt(bt.basicOptionalSeconds,t);case"XXXXX":return wt(bt.extendedOptionalSeconds,t);case"XXX":default:return wt(bt.extended,t)}}set(t,n,a){return n.timestampIsSet?t:Te(t,t.getTime()-Ta(t)-a)}incompatibleTokens=["t","T","x"]}class Io extends Pe{priority=10;parse(t,n){switch(n){case"x":return wt(bt.basicOptionalMinutes,t);case"xx":return wt(bt.basic,t);case"xxxx":return wt(bt.basicOptionalSeconds,t);case"xxxxx":return wt(bt.extendedOptionalSeconds,t);case"xxx":default:return wt(bt.extended,t)}}set(t,n,a){return n.timestampIsSet?t:Te(t,t.getTime()-Ta(t)-a)}incompatibleTokens=["t","T","X"]}class Eo extends Pe{priority=40;parse(t){return sr(t)}set(t,n,a){return[Te(t,a*1e3),{timestampIsSet:!0}]}incompatibleTokens="*"}class Bo extends Pe{priority=20;parse(t){return sr(t)}set(t,n,a){return[Te(t,a),{timestampIsSet:!0}]}incompatibleTokens="*"}const No={G:new to,y:new ao,Y:new no,R:new ro,u:new lo,Q:new oo,q:new io,M:new so,L:new uo,w:new vo,I:new po,d:new yo,D:new go,E:new bo,e:new wo,c:new _o,i:new xo,a:new Mo,b:new Do,B:new To,h:new Po,H:new Ao,K:new Co,k:new Oo,m:new $o,s:new Yo,S:new So,X:new Ro,x:new Io,t:new Eo,T:new Bo},Lo=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Ho=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Vo=/^'([^]*?)'?$/,Fo=/''/g,qo=/\S/,Wo=/[a-zA-Z]/;function rn(e,t,n,a){const r=Gl(),l=a?.locale??r.locale??nr,i=a?.firstWeekContainsDate??a?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,p=a?.weekStartsOn??a?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0;if(t==="")return e===""?ve(n):Te(n,NaN);const c={firstWeekContainsDate:i,weekStartsOn:p,locale:l},C=[new eo],m=t.match(Ho).map(f=>{const S=f[0];if(S in an){const I=an[S];return I(f,l.formatLong)}return f}).join("").match(Lo),v=[];for(let f of m){!a?.useAdditionalWeekYearTokens&&or(f)&&nn(f,t,e),!a?.useAdditionalDayOfYearTokens&&lr(f)&&nn(f,t,e);const S=f[0],I=No[S];if(I){const{incompatibleTokens:U}=I;if(Array.isArray(U)){const q=v.find(ae=>U.includes(ae.token)||ae.token===S);if(q)throw new RangeError(`The format string mustn't contain \`${q.fullToken}\` and \`${f}\` at the same time`)}else if(I.incompatibleTokens==="*"&&v.length>0)throw new RangeError(`The format string mustn't contain \`${f}\` and any other token at the same time`);v.push({token:S,fullToken:f});const A=I.run(e,f,l.match,c);if(!A)return Te(n,NaN);C.push(A.setter),e=A.rest}else{if(S.match(Wo))throw new RangeError("Format string contains an unescaped latin alphabet character `"+S+"`");if(f==="''"?f="'":S==="'"&&(f=Qo(f)),e.indexOf(f)===0)e=e.slice(f.length);else return Te(n,NaN)}}if(e.length>0&&qo.test(e))return Te(n,NaN);const h=C.map(f=>f.priority).sort((f,S)=>S-f).filter((f,S,I)=>I.indexOf(f)===S).map(f=>C.filter(S=>S.priority===f).sort((S,I)=>I.subPriority-S.subPriority)).map(f=>f[0]);let k=ve(n);if(isNaN(k.getTime()))return Te(n,NaN);const Y={};for(const f of h){if(!f.validate(k,c))return Te(n,NaN);const S=f.set(k,Y,c);Array.isArray(S)?(k=S[0],Object.assign(Y,S[1])):k=S}return Te(n,k)}function Qo(e){return e.match(Vo)[1].replace(Fo,"'")}function Bn(e,t){const n=Ht(e),a=Ht(t);return+n==+a}function zo(e,t){return mt(e,-t)}function cr(e,t){const n=ve(e),a=n.getFullYear(),r=n.getDate(),l=Te(e,0);l.setFullYear(a,t,15),l.setHours(0,0,0,0);const i=Xl(l);return n.setMonth(t,Math.min(r,i)),n}function Ce(e,t){let n=ve(e);return isNaN(+n)?Te(e,NaN):(t.year!=null&&n.setFullYear(t.year),t.month!=null&&(n=cr(n,t.month)),t.date!=null&&n.setDate(t.date),t.hours!=null&&n.setHours(t.hours),t.minutes!=null&&n.setMinutes(t.minutes),t.seconds!=null&&n.setSeconds(t.seconds),t.milliseconds!=null&&n.setMilliseconds(t.milliseconds),n)}function Uo(e,t){const n=ve(e);return n.setHours(t),n}function vr(e,t){const n=ve(e);return n.setMilliseconds(t),n}function Xo(e,t){const n=ve(e);return n.setMinutes(t),n}function mr(e,t){const n=ve(e);return n.setSeconds(t),n}function _t(e,t){const n=ve(e);return isNaN(+n)?Te(e,NaN):(n.setFullYear(t),n)}function Jt(e,t){return ft(e,-t)}function Go(e,t){const{years:n=0,months:a=0,weeks:r=0,days:l=0,hours:i=0,minutes:p=0,seconds:c=0}=t,C=Jt(e,a+n*12),m=zo(C,l+r*7),v=p+i*60,k=(c+v*60)*1e3;return Te(e,m.getTime()-k)}function pr(e,t){return un(e,-t)}function aa(){const e=Lr();return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img",...e},[ye("path",{d:"M29.333 8c0-2.208-1.792-4-4-4h-18.667c-2.208 0-4 1.792-4 4v18.667c0 2.208 1.792 4 4 4h18.667c2.208 0 4-1.792 4-4v-18.667zM26.667 8v18.667c0 0.736-0.597 1.333-1.333 1.333 0 0-18.667 0-18.667 0-0.736 0-1.333-0.597-1.333-1.333 0 0 0-18.667 0-18.667 0-0.736 0.597-1.333 1.333-1.333 0 0 18.667 0 18.667 0 0.736 0 1.333 0.597 1.333 1.333z"}),ye("path",{d:"M20 2.667v5.333c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-5.333c0-0.736-0.597-1.333-1.333-1.333s-1.333 0.597-1.333 1.333z"}),ye("path",{d:"M9.333 2.667v5.333c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-5.333c0-0.736-0.597-1.333-1.333-1.333s-1.333 0.597-1.333 1.333z"}),ye("path",{d:"M4 14.667h24c0.736 0 1.333-0.597 1.333-1.333s-0.597-1.333-1.333-1.333h-24c-0.736 0-1.333 0.597-1.333 1.333s0.597 1.333 1.333 1.333z"})])}aa.compatConfig={MODE:3};function fr(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M23.057 7.057l-16 16c-0.52 0.52-0.52 1.365 0 1.885s1.365 0.52 1.885 0l16-16c0.52-0.52 0.52-1.365 0-1.885s-1.365-0.52-1.885 0z"}),ye("path",{d:"M7.057 8.943l16 16c0.52 0.52 1.365 0.52 1.885 0s0.52-1.365 0-1.885l-16-16c-0.52-0.52-1.365-0.52-1.885 0s-0.52 1.365 0 1.885z"})])}fr.compatConfig={MODE:3};function fn(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M20.943 23.057l-7.057-7.057c0 0 7.057-7.057 7.057-7.057 0.52-0.52 0.52-1.365 0-1.885s-1.365-0.52-1.885 0l-8 8c-0.521 0.521-0.521 1.365 0 1.885l8 8c0.52 0.52 1.365 0.52 1.885 0s0.52-1.365 0-1.885z"})])}fn.compatConfig={MODE:3};function hn(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M12.943 24.943l8-8c0.521-0.521 0.521-1.365 0-1.885l-8-8c-0.52-0.52-1.365-0.52-1.885 0s-0.52 1.365 0 1.885l7.057 7.057c0 0-7.057 7.057-7.057 7.057-0.52 0.52-0.52 1.365 0 1.885s1.365 0.52 1.885 0z"})])}hn.compatConfig={MODE:3};function yn(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M16 1.333c-8.095 0-14.667 6.572-14.667 14.667s6.572 14.667 14.667 14.667c8.095 0 14.667-6.572 14.667-14.667s-6.572-14.667-14.667-14.667zM16 4c6.623 0 12 5.377 12 12s-5.377 12-12 12c-6.623 0-12-5.377-12-12s5.377-12 12-12z"}),ye("path",{d:"M14.667 8v8c0 0.505 0.285 0.967 0.737 1.193l5.333 2.667c0.658 0.329 1.46 0.062 1.789-0.596s0.062-1.46-0.596-1.789l-4.596-2.298c0 0 0-7.176 0-7.176 0-0.736-0.597-1.333-1.333-1.333s-1.333 0.597-1.333 1.333z"})])}yn.compatConfig={MODE:3};function gn(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M24.943 19.057l-8-8c-0.521-0.521-1.365-0.521-1.885 0l-8 8c-0.52 0.52-0.52 1.365 0 1.885s1.365 0.52 1.885 0l7.057-7.057c0 0 7.057 7.057 7.057 7.057 0.52 0.52 1.365 0.52 1.885 0s0.52-1.365 0-1.885z"})])}gn.compatConfig={MODE:3};function bn(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M7.057 12.943l8 8c0.521 0.521 1.365 0.521 1.885 0l8-8c0.52-0.52 0.52-1.365 0-1.885s-1.365-0.52-1.885 0l-7.057 7.057c0 0-7.057-7.057-7.057-7.057-0.52-0.52-1.365-0.52-1.885 0s-0.52 1.365 0 1.885z"})])}bn.compatConfig={MODE:3};const nt=(e,t)=>t?new Date(e.toLocaleString("en-US",{timeZone:t})):new Date(e),wn=(e,t,n)=>ln(e,t,n)||Q(),jo=(e,t,n)=>{const a=t.dateInTz?nt(new Date(e),t.dateInTz):Q(e);return n?tt(a,!0):a},ln=(e,t,n)=>{if(!e)return null;const a=n?tt(Q(e),!0):Q(e);return t?t.exactMatch?jo(e,t,n):nt(a,t.timezone):a},Ko=e=>{if(!e)return 0;const t=new Date,n=new Date(t.toLocaleString("en-US",{timeZone:"UTC"})),a=new Date(t.toLocaleString("en-US",{timeZone:e})),r=a.getTimezoneOffset()/60;return(+n-+a)/(1e3*60*60)-r};var vt=(e=>(e.month="month",e.year="year",e))(vt||{}),Lt=(e=>(e.top="top",e.bottom="bottom",e))(Lt||{}),Vt=(e=>(e.header="header",e.calendar="calendar",e.timePicker="timePicker",e))(Vt||{}),Xe=(e=>(e.month="month",e.year="year",e.calendar="calendar",e.time="time",e.minutes="minutes",e.hours="hours",e.seconds="seconds",e))(Xe||{});const Jo=["timestamp","date","iso"];var Ze=(e=>(e.up="up",e.down="down",e.left="left",e.right="right",e))(Ze||{}),$e=(e=>(e.arrowUp="ArrowUp",e.arrowDown="ArrowDown",e.arrowLeft="ArrowLeft",e.arrowRight="ArrowRight",e.enter="Enter",e.space=" ",e.esc="Escape",e.tab="Tab",e.home="Home",e.end="End",e.pageUp="PageUp",e.pageDown="PageDown",e))($e||{});function Nn(e){return t=>new Intl.DateTimeFormat(e,{weekday:"short",timeZone:"UTC"}).format(new Date(`2017-01-0${t}T00:00:00+00:00`)).slice(0,2)}function Zo(e){return t=>kt(nt(new Date(`2017-01-0${t}T00:00:00+00:00`),"UTC"),"EEEEEE",{locale:e})}const ei=(e,t,n)=>{const a=[1,2,3,4,5,6,7];let r;if(e!==null)try{r=a.map(Zo(e))}catch{r=a.map(Nn(t))}else r=a.map(Nn(t));const l=r.slice(0,n),i=r.slice(n+1,r.length);return[r[n]].concat(...i).concat(...l)},_n=(e,t,n)=>{const a=[];for(let r=+e[0];r<=+e[1];r++)a.push({value:+r,text:br(r,t)});return n?a.reverse():a},hr=(e,t,n)=>{const a=[1,2,3,4,5,6,7,8,9,10,11,12].map(l=>{const i=l<10?`0${l}`:l;return new Date(`2017-${i}-01T00:00:00+00:00`)});if(e!==null)try{const l=n==="long"?"LLLL":"LLL";return a.map((i,p)=>{const c=kt(nt(i,"UTC"),l,{locale:e});return{text:c.charAt(0).toUpperCase()+c.substring(1),value:p}})}catch{}const r=new Intl.DateTimeFormat(t,{month:n,timeZone:"UTC"});return a.map((l,i)=>{const p=r.format(l);return{text:p.charAt(0).toUpperCase()+p.substring(1),value:i}})},ti=e=>[12,1,2,3,4,5,6,7,8,9,10,11,12,1,2,3,4,5,6,7,8,9,10,11][e],Fe=e=>{const t=d(e);return t!=null&&t.$el?t?.$el:t},ai=e=>({type:"dot",...e??{}}),yr=e=>Array.isArray(e)?!!e[0]&&!!e[1]:!1,kn={prop:e=>`"${e}" prop must be enabled!`,dateArr:e=>`You need to use array as "model-value" binding in order to support "${e}"`},qe=e=>e,Ln=e=>e===0?e:!e||isNaN(+e)?null:+e,Hn=e=>e===null,gr=e=>{if(e)return[...e.querySelectorAll("input, button, select, textarea, a[href]")][0]},ni=e=>{const t=[],n=a=>a.filter(r=>r);for(let a=0;a{const a=n!=null,r=t!=null;if(!a&&!r)return!1;const l=+n,i=+t;return a&&r?+e>l||+el:r?+eni(e).map(n=>n.map(a=>{const{active:r,disabled:l,isBetween:i,highlighted:p}=t(a);return{...a,active:r,disabled:l,className:{dp__overlay_cell_active:r,dp__overlay_cell:!r,dp__overlay_cell_disabled:l,dp__overlay_cell_pad:!0,dp__overlay_cell_active_disabled:l&&r,dp__cell_in_between:i,"dp--highlighted":p}}})),Yt=(e,t,n=!1)=>{e&&t.allowStopPropagation&&(n&&e.stopImmediatePropagation(),e.stopPropagation())},ri=()=>["a[href]","area[href]","input:not([disabled]):not([type='hidden'])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","[tabindex]:not([tabindex='-1'])","[data-datepicker-instance]"].join(", ");function li(e,t){let n=[...document.querySelectorAll(ri())];n=n.filter(r=>!e.contains(r)||r.hasAttribute("data-datepicker-instance"));const a=n.indexOf(e);if(a>=0&&(t?a-1>=0:a+1<=n.length))return n[a+(t?-1:1)]}const on=(e,t)=>e?.querySelector(`[data-dp-element="${t}"]`),br=(e,t)=>new Intl.NumberFormat(t,{useGrouping:!1,style:"decimal"}).format(e),xn=e=>kt(e,"dd-MM-yyyy"),Qa=e=>Array.isArray(e),Aa=(e,t)=>t.get(xn(e)),oi=(e,t)=>e?t?t instanceof Map?!!Aa(e,t):t(Q(e)):!1:!0,et=(e,t,n=!1,a)=>{if(e.key===$e.enter||e.key===$e.space)return n&&e.preventDefault(),t();if(a)return a(e)},Vn=()=>["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].some(e=>navigator.userAgent.includes(e))||navigator.userAgent.includes("Mac")&&"ontouchend"in document,Fn=(e,t,n,a,r,l)=>{const i=rn(e,t.slice(0,e.length),new Date,{locale:l});return ua(i)&&Zn(i)?a||r?i:Ce(i,{hours:+n.hours,minutes:+n?.minutes,seconds:+n?.seconds,milliseconds:0}):null},ii=(e,t,n,a,r,l)=>{const i=Array.isArray(n)?n[0]:n;if(typeof t=="string")return Fn(e,t,i,a,r,l);if(Array.isArray(t)){let p=null;for(const c of t)if(p=Fn(e,c,i,a,r,l),p)break;return p}return typeof t=="function"?t(e):null},Q=e=>e?new Date(e):new Date,si=(e,t,n)=>{if(t){const r=(e.getMonth()+1).toString().padStart(2,"0"),l=e.getDate().toString().padStart(2,"0"),i=e.getHours().toString().padStart(2,"0"),p=e.getMinutes().toString().padStart(2,"0"),c=n?e.getSeconds().toString().padStart(2,"0"):"00";return`${e.getFullYear()}-${r}-${l}T${i}:${p}:${c}.000Z`}const a=Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds());return new Date(a).toISOString()},tt=(e,t)=>{const n=Q(JSON.parse(JSON.stringify(e))),a=Ce(n,{hours:0,minutes:0,seconds:0,milliseconds:0});return t?tl(a):a},St=(e,t,n,a)=>{let r=e?Q(e):Q();return(t||t===0)&&(r=Uo(r,+t)),(n||n===0)&&(r=Xo(r,+n)),(a||a===0)&&(r=mr(r,+a)),vr(r,0)},Ie=(e,t)=>!e||!t?!1:pa(tt(e),tt(t)),Me=(e,t)=>!e||!t?!1:Xt(tt(e),tt(t)),Ne=(e,t)=>!e||!t?!1:Kt(tt(e),tt(t)),$a=(e,t,n)=>e!=null&&e[0]&&e!=null&&e[1]?Ne(n,e[0])&&Ie(n,e[1]):e!=null&&e[0]&&t?Ne(n,e[0])&&Ie(n,t)||Ie(n,e[0])&&Ne(n,t):!1,pt=e=>{const t=Ce(new Date(e),{date:1});return tt(t)},za=(e,t,n)=>t&&(n||n===0)?Object.fromEntries(["hours","minutes","seconds"].map(a=>a===t?[a,n]:[a,isNaN(+e[a])?void 0:+e[a]])):{hours:isNaN(+e.hours)?void 0:+e.hours,minutes:isNaN(+e.minutes)?void 0:+e.minutes,seconds:isNaN(+e.seconds)?void 0:+e.seconds},Ft=e=>({hours:Tt(e),minutes:Rt(e),seconds:jt(e)}),wr=(e,t)=>{if(t){const n=he(Q(t));if(n>e)return 12;if(n===e)return xe(Q(t))}},_r=(e,t)=>{if(t){const n=he(Q(t));return n{if(e)return he(Q(e))},kr=(e,t)=>{const n=Ne(e,t)?t:e,a=Ne(t,e)?t:e;return er({start:n,end:a})},ui=e=>{const t=ft(e,1);return{month:xe(t),year:he(t)}},xt=(e,t)=>{const n=ht(e,{weekStartsOn:+t}),a=ar(e,{weekStartsOn:+t});return[n,a]},xr=(e,t)=>{const n={hours:Tt(Q()),minutes:Rt(Q()),seconds:t?jt(Q()):0};return Object.assign(n,e)},$t=(e,t,n)=>[Ce(Q(e),{date:1}),Ce(Q(),{month:t,year:n,date:1})],Mt=(e,t,n)=>{let a=e?Q(e):Q();return(t||t===0)&&(a=cr(a,t)),n&&(a=_t(a,n)),a},Mr=(e,t,n,a,r)=>{if(!a||r&&!t||!r&&!n)return!1;const l=r?ft(e,1):Jt(e,1),i=[xe(l),he(l)];return r?!ci(...i,t):!di(...i,n)},di=(e,t,n)=>Ie(...$t(n,e,t))||Me(...$t(n,e,t)),ci=(e,t,n)=>Ne(...$t(n,e,t))||Me(...$t(n,e,t)),Dr=(e,t,n,a,r,l,i)=>{if(typeof t=="function"&&!i)return t(e);const p=n?{locale:n}:void 0;return Array.isArray(e)?`${kt(e[0],l,p)}${r&&!e[1]?"":a}${e[1]?kt(e[1],l,p):""}`:kt(e,l,p)},zt=e=>{if(e)return null;throw new Error(kn.prop("partial-range"))},ka=(e,t)=>{if(t)return e();throw new Error(kn.prop("range"))},sn=e=>Array.isArray(e)?ua(e[0])&&(e[1]?ua(e[1]):!0):e?ua(e):!1,vi=(e,t)=>Ce(t??Q(),{hours:+e.hours||0,minutes:+e.minutes||0,seconds:+e.seconds||0}),Ua=(e,t,n,a)=>{if(!e)return!0;if(a){const r=n==="max"?pa(e,t):Kt(e,t),l={seconds:0,milliseconds:0};return r||Xt(Ce(e,l),Ce(t,l))}return n==="max"?e.getTime()<=t.getTime():e.getTime()>=t.getTime()},Xa=(e,t,n)=>e?vi(e,t):Q(n??t),qn=(e,t,n,a,r)=>{if(Array.isArray(a)){const i=Xa(e,a[0],t),p=Xa(e,a[1],t);return Ua(a[0],i,n,!!t)&&Ua(a[1],p,n,!!t)&&r}const l=Xa(e,a,t);return Ua(a,l,n,!!t)&&r},Ga=e=>Ce(Q(),Ft(e)),mi=(e,t)=>e instanceof Map?Array.from(e.values()).filter(n=>he(Q(n))===t).map(n=>xe(n)):[],Tr=(e,t,n)=>typeof e=="function"?e({month:t,year:n}):!!e.months.find(a=>a.month===t&&a.year===n),Mn=(e,t)=>typeof e=="function"?e(t):e.years.includes(t),Pr=e=>kt(e,"yyyy-MM-dd"),sa=ha({menuFocused:!1,shiftKeyInMenu:!1}),Ar=()=>{const e=n=>{sa.menuFocused=n},t=n=>{sa.shiftKeyInMenu!==n&&(sa.shiftKeyInMenu=n)};return{control:G(()=>({shiftKeyInMenu:sa.shiftKeyInMenu,menuFocused:sa.menuFocused})),setMenuFocused:e,setShiftKey:t}},Oe=ha({monthYear:[],calendar:[],time:[],actionRow:[],selectionGrid:[],timePicker:{0:[],1:[]},monthPicker:[]}),ja=Z(null),xa=Z(!1),Ka=Z(!1),Ja=Z(!1),Za=Z(!1),Ue=Z(0),Be=Z(0),It=()=>{const e=G(()=>xa.value?[...Oe.selectionGrid,Oe.actionRow].filter(v=>v.length):Ka.value?[...Oe.timePicker[0],...Oe.timePicker[1],Za.value?[]:[ja.value],Oe.actionRow].filter(v=>v.length):Ja.value?[...Oe.monthPicker,Oe.actionRow]:[Oe.monthYear,...Oe.calendar,Oe.time,Oe.actionRow].filter(v=>v.length)),t=v=>{Ue.value=v?Ue.value+1:Ue.value-1;let h=null;e.value[Be.value]&&(h=e.value[Be.value][Ue.value]),!h&&e.value[Be.value+(v?1:-1)]?(Be.value=Be.value+(v?1:-1),Ue.value=v?0:e.value[Be.value].length-1):h||(Ue.value=v?Ue.value-1:Ue.value+1)},n=v=>{Be.value===0&&!v||Be.value===e.value.length&&v||(Be.value=v?Be.value+1:Be.value-1,e.value[Be.value]?e.value[Be.value]&&!e.value[Be.value][Ue.value]&&Ue.value!==0&&(Ue.value=e.value[Be.value].length-1):Be.value=v?Be.value-1:Be.value+1)},a=v=>{let h=null;e.value[Be.value]&&(h=e.value[Be.value][Ue.value]),h?h.focus({preventScroll:!xa.value}):Ue.value=v?Ue.value-1:Ue.value+1},r=()=>{t(!0),a(!0)},l=()=>{t(!1),a(!1)},i=()=>{n(!1),a(!0)},p=()=>{n(!0),a(!0)},c=(v,h)=>{Oe[h]=v},C=(v,h)=>{Oe[h]=v},m=()=>{Ue.value=0,Be.value=0};return{buildMatrix:c,buildMultiLevelMatrix:C,setTimePickerBackRef:v=>{ja.value=v},setSelectionGrid:v=>{xa.value=v,m(),v||(Oe.selectionGrid=[])},setTimePicker:(v,h=!1)=>{Ka.value=v,Za.value=h,m(),v||(Oe.timePicker[0]=[],Oe.timePicker[1]=[])},setTimePickerElements:(v,h=0)=>{Oe.timePicker[h]=v},arrowRight:r,arrowLeft:l,arrowUp:i,arrowDown:p,clearArrowNav:()=>{Oe.monthYear=[],Oe.calendar=[],Oe.time=[],Oe.actionRow=[],Oe.selectionGrid=[],Oe.timePicker[0]=[],Oe.timePicker[1]=[],xa.value=!1,Ka.value=!1,Za.value=!1,Ja.value=!1,m(),ja.value=null},setMonthPicker:v=>{Ja.value=v,m()},refSets:Oe}},Wn=e=>({menuAppearTop:"dp-menu-appear-top",menuAppearBottom:"dp-menu-appear-bottom",open:"dp-slide-down",close:"dp-slide-up",next:"calendar-next",previous:"calendar-prev",vNext:"dp-slide-up",vPrevious:"dp-slide-down",...e??{}}),pi=e=>({toggleOverlay:"Toggle overlay",menu:"Datepicker menu",input:"Datepicker input",openTimePicker:"Open time picker",closeTimePicker:"Close time Picker",incrementValue:t=>`Increment ${t}`,decrementValue:t=>`Decrement ${t}`,openTpOverlay:t=>`Open ${t} overlay`,amPmButton:"Switch AM/PM mode",openYearsOverlay:"Open years overlay",openMonthsOverlay:"Open months overlay",nextMonth:"Next month",prevMonth:"Previous month",nextYear:"Next year",prevYear:"Previous year",day:void 0,weekDay:void 0,clearInput:"Clear value",calendarIcon:"Calendar icon",timePicker:"Time picker",monthPicker:t=>`Month picker${t?" overlay":""}`,yearPicker:t=>`Year picker${t?" overlay":""}`,timeOverlay:t=>`${t} overlay`,...e??{}}),Qn=e=>e?typeof e=="boolean"?e?2:0:+e>=2?+e:2:0,fi=e=>{const t=typeof e=="object"&&e,n={static:!0,solo:!1};if(!e)return{...n,count:Qn(!1)};const a=t?e:{},r=t?a.count??!0:e,l=Qn(r);return Object.assign(n,a,{count:l})},hi=(e,t,n)=>e||(typeof n=="string"?n:t),yi=e=>typeof e=="boolean"?e?Wn({}):!1:Wn(e),gi=e=>{const t={enterSubmit:!0,tabSubmit:!0,openMenu:"open",selectOnFocus:!1,rangeSeparator:" - "};return typeof e=="object"?{...t,...e??{},enabled:!0}:{...t,enabled:e}},bi=e=>({months:[],years:[],times:{hours:[],minutes:[],seconds:[]},...e??{}}),wi=e=>({showSelect:!0,showCancel:!0,showNow:!1,showPreview:!0,...e??{}}),_i=e=>{const t={input:!1};return typeof e=="object"?{...t,...e??{},enabled:!0}:{enabled:e,...t}},ki=e=>({allowStopPropagation:!0,closeOnScroll:!1,modeHeight:255,allowPreventDefault:!1,closeOnClearValue:!0,closeOnAutoApply:!0,noSwipe:!1,keepActionRow:!1,onClickOutside:void 0,tabOutClosesMenu:!0,arrowLeft:void 0,keepViewOnOffsetClick:!1,timeArrowHoldThreshold:0,shadowDom:!1,...e??{}}),xi=e=>{const t={dates:Array.isArray(e)?e.map(n=>Q(n)):[],years:[],months:[],quarters:[],weeks:[],weekdays:[],options:{highlightDisabled:!1}};return typeof e=="function"?e:{...t,...e??{}}},Mi=e=>typeof e=="object"?{type:e?.type??"local",hideOnOffsetDates:e?.hideOnOffsetDates??!1}:{type:e,hideOnOffsetDates:!1},Di=e=>{const t={noDisabledRange:!1,showLastInRange:!0,minMaxRawRange:!1,partialRange:!0,disableTimeRangeValidation:!1,maxRange:void 0,minRange:void 0,autoRange:void 0,fixedStart:!1,fixedEnd:!1};return typeof e=="object"?{enabled:!0,...t,...e}:{enabled:e,...t}},Ti=e=>e?typeof e=="string"?{timezone:e,exactMatch:!1,dateInTz:void 0,emitTimezone:void 0,convertModel:!0}:{timezone:e.timezone,exactMatch:e.exactMatch??!1,dateInTz:e.dateInTz??void 0,emitTimezone:e.emitTimezone??void 0,convertModel:e.convertModel??!0}:{timezone:void 0,exactMatch:!1,emitTimezone:void 0},en=(e,t,n)=>new Map(e.map(a=>{const r=wn(a,t,n);return[xn(r),r]})),Pi=(e,t)=>e.length?new Map(e.map(n=>{const a=wn(n.date,t);return[xn(a),n]})):null,Ai=e=>{var t;return{minDate:ln(e.minDate,e.timezone,e.isSpecific),maxDate:ln(e.maxDate,e.timezone,e.isSpecific),disabledDates:Qa(e.disabledDates)?en(e.disabledDates,e.timezone,e.isSpecific):e.disabledDates,allowedDates:Qa(e.allowedDates)?en(e.allowedDates,e.timezone,e.isSpecific):null,highlight:typeof e.highlight=="object"&&Qa((t=e.highlight)==null?void 0:t.dates)?en(e.highlight.dates,e.timezone):e.highlight,markers:Pi(e.markers,e.timezone)}},Ci=e=>typeof e=="boolean"?{enabled:e,dragSelect:!0,limit:null}:{enabled:!!e,limit:e.limit?+e.limit:null,dragSelect:e.dragSelect??!0},Oi=e=>({...Object.fromEntries(Object.keys(e).map(t=>{const n=t,a=e[n],r=typeof e[n]=="string"?{[a]:!0}:Object.fromEntries(a.map(l=>[l,!0]));return[t,r]}))}),Se=e=>{const t=()=>{const E=e.enableSeconds?":ss":"",B=e.enableMinutes?":mm":"";return e.is24?`HH${B}${E}`:`hh${B}${E} aa`},n=()=>{var E;return e.format?e.format:e.monthPicker?"MM/yyyy":e.timePicker?t():e.weekPicker?`${((E=S.value)==null?void 0:E.type)==="iso"?"RR":"ww"}-yyyy`:e.yearPicker?"yyyy":e.quarterPicker?"QQQ/yyyy":e.enableTimePicker?`MM/dd/yyyy, ${t()}`:"MM/dd/yyyy"},a=E=>xr(E,e.enableSeconds),r=()=>q.value.enabled?e.startTime&&Array.isArray(e.startTime)?[a(e.startTime[0]),a(e.startTime[1])]:null:e.startTime&&!Array.isArray(e.startTime)?a(e.startTime):null,l=G(()=>fi(e.multiCalendars)),i=G(()=>r()),p=G(()=>pi(e.ariaLabels)),c=G(()=>bi(e.filters)),C=G(()=>yi(e.transitions)),m=G(()=>wi(e.actionRow)),v=G(()=>hi(e.previewFormat,e.format,n())),h=G(()=>gi(e.textInput)),k=G(()=>_i(e.inline)),Y=G(()=>ki(e.config)),f=G(()=>xi(e.highlight)),S=G(()=>Mi(e.weekNumbers)),I=G(()=>Ti(e.timezone)),U=G(()=>Ci(e.multiDates)),A=G(()=>Ai({minDate:e.minDate,maxDate:e.maxDate,disabledDates:e.disabledDates,allowedDates:e.allowedDates,highlight:f.value,markers:e.markers,timezone:I.value,isSpecific:e.monthPicker||e.yearPicker||e.quarterPicker})),q=G(()=>Di(e.range)),ae=G(()=>Oi(e.ui));return{defaultedTransitions:C,defaultedMultiCalendars:l,defaultedStartTime:i,defaultedAriaLabels:p,defaultedFilters:c,defaultedActionRow:m,defaultedPreviewFormat:v,defaultedTextInput:h,defaultedInline:k,defaultedConfig:Y,defaultedHighlight:f,defaultedWeekNumbers:S,defaultedRange:q,propDates:A,defaultedTz:I,defaultedMultiDates:U,defaultedUI:ae,getDefaultPattern:n,getDefaultStartTime:r}},$i=(e,t,n)=>{const a=Z(),{defaultedTextInput:r,defaultedRange:l,defaultedTz:i,defaultedMultiDates:p,getDefaultPattern:c}=Se(t),C=Z(""),m=ca(t,"format"),v=ca(t,"formatLocale");ct(a,()=>{typeof t.onInternalModelChange=="function"&&e("internal-model-change",a.value,z(!0))},{deep:!0}),ct(l,(u,le)=>{u.enabled!==le.enabled&&(a.value=null)}),ct(m,()=>{re()});const h=u=>i.value.timezone&&i.value.convertModel?nt(u,i.value.timezone):u,k=u=>{if(i.value.timezone&&i.value.convertModel){const le=Ko(i.value.timezone);return Xr(u,le)}return u},Y=(u,le,fe=!1)=>Dr(u,t.format,t.formatLocale,r.value.rangeSeparator,t.modelAuto,le??c(),fe),f=u=>u?t.modelType?b(u):{hours:Tt(u),minutes:Rt(u),seconds:t.enableSeconds?jt(u):0}:null,S=u=>t.modelType?b(u):{month:xe(u),year:he(u)},I=u=>Array.isArray(u)?p.value.enabled?u.map(le=>U(le,_t(Q(),le))):ka(()=>[_t(Q(),u[0]),u[1]?_t(Q(),u[1]):zt(l.value.partialRange)],l.value.enabled):_t(Q(),+u),U=(u,le)=>(typeof u=="string"||typeof u=="number")&&t.modelType?R(u):le,A=u=>Array.isArray(u)?[U(u[0],St(null,+u[0].hours,+u[0].minutes,u[0].seconds)),U(u[1],St(null,+u[1].hours,+u[1].minutes,u[1].seconds))]:U(u,St(null,u.hours,u.minutes,u.seconds)),q=u=>{const le=Ce(Q(),{date:1});return Array.isArray(u)?p.value.enabled?u.map(fe=>U(fe,Mt(le,+fe.month,+fe.year))):ka(()=>[U(u[0],Mt(le,+u[0].month,+u[0].year)),U(u[1],u[1]?Mt(le,+u[1].month,+u[1].year):zt(l.value.partialRange))],l.value.enabled):U(u,Mt(le,+u.month,+u.year))},ae=u=>{if(Array.isArray(u))return u.map(le=>R(le));throw new Error(kn.dateArr("multi-dates"))},E=u=>{if(Array.isArray(u)&&l.value.enabled){const le=u[0],fe=u[1];return[Q(Array.isArray(le)?le[0]:null),Array.isArray(fe)&&fe.length?Q(fe[0]):null]}return Q(u[0])},B=u=>t.modelAuto?Array.isArray(u)?[R(u[0]),R(u[1])]:t.autoApply?[R(u)]:[R(u),null]:Array.isArray(u)?ka(()=>u[1]?[R(u[0]),u[1]?R(u[1]):zt(l.value.partialRange)]:[R(u[0])],l.value.enabled):R(u),ne=()=>{Array.isArray(a.value)&&l.value.enabled&&a.value.length===1&&a.value.push(zt(l.value.partialRange))},F=()=>{const u=a.value;return[b(u[0]),u[1]?b(u[1]):zt(l.value.partialRange)]},N=()=>a.value[1]?F():b(qe(a.value[0])),ie=()=>(a.value||[]).map(u=>b(u)),ce=(u=!1)=>(u||ne(),t.modelAuto?N():p.value.enabled?ie():Array.isArray(a.value)?ka(()=>F(),l.value.enabled):b(qe(a.value))),pe=u=>!u||Array.isArray(u)&&!u.length?null:t.timePicker?A(qe(u)):t.monthPicker?q(qe(u)):t.yearPicker?I(qe(u)):p.value.enabled?ae(qe(u)):t.weekPicker?E(qe(u)):B(qe(u)),g=u=>{const le=pe(u);sn(qe(le))?(a.value=qe(le),re()):(a.value=null,C.value="")},D=()=>{const u=le=>kt(le,r.value.format);return`${u(a.value[0])} ${r.value.rangeSeparator} ${a.value[1]?u(a.value[1]):""}`},y=()=>n.value&&a.value?Array.isArray(a.value)?D():kt(a.value,r.value.format):Y(a.value),H=()=>a.value?p.value.enabled?a.value.map(u=>Y(u)).join("; "):r.value.enabled&&typeof r.value.format=="string"?y():Y(a.value):"",re=()=>{!t.format||typeof t.format=="string"||r.value.enabled&&typeof r.value.format=="string"?C.value=H():C.value=t.format(a.value)},R=u=>{if(t.utc){const le=new Date(u);return t.utc==="preserve"?new Date(le.getTime()+le.getTimezoneOffset()*6e4):le}return t.modelType?Jo.includes(t.modelType)?h(new Date(u)):t.modelType==="format"&&(typeof t.format=="string"||!t.format)?h(rn(u,c(),new Date,{locale:v.value})):h(rn(u,t.modelType,new Date,{locale:v.value})):h(new Date(u))},b=u=>u?t.utc?si(u,t.utc==="preserve",t.enableSeconds):t.modelType?t.modelType==="timestamp"?+k(u):t.modelType==="iso"?k(u).toISOString():t.modelType==="format"&&(typeof t.format=="string"||!t.format)?Y(k(u)):Y(k(u),t.modelType,!0):k(u):"",oe=(u,le=!1,fe=!1)=>{if(fe)return u;if(e("update:model-value",u),i.value.emitTimezone&&le){const Ve=Array.isArray(u)?u.map(T=>nt(qe(T),i.value.emitTimezone)):nt(qe(u),i.value.emitTimezone);e("update:model-timezone-value",Ve)}},V=u=>Array.isArray(a.value)?p.value.enabled?a.value.map(le=>u(le)):[u(a.value[0]),a.value[1]?u(a.value[1]):zt(l.value.partialRange)]:u(qe(a.value)),M=()=>{if(Array.isArray(a.value)){const u=xt(a.value[0],t.weekStart),le=a.value[1]?xt(a.value[1],t.weekStart):[];return[u.map(fe=>Q(fe)),le.map(fe=>Q(fe))]}return xt(a.value,t.weekStart).map(u=>Q(u))},o=(u,le)=>oe(qe(V(u)),!1,le),w=u=>{const le=M();return u?le:e("update:model-value",M())},z=(u=!1)=>(u||re(),t.monthPicker?o(S,u):t.timePicker?o(f,u):t.yearPicker?o(he,u):t.weekPicker?w(u):oe(ce(u),!0,u));return{inputValue:C,internalModelValue:a,checkBeforeEmit:()=>a.value?l.value.enabled?l.value.partialRange?a.value.length>=1:a.value.length===2:!!a.value:!1,parseExternalModelValue:g,formatInputValue:re,emitModelValue:z}},Yi=(e,t)=>{const{defaultedFilters:n,propDates:a}=Se(e),{validateMonthYearInRange:r}=Et(e),l=(m,v)=>{let h=m;return n.value.months.includes(xe(h))?(h=v?ft(m,1):Jt(m,1),l(h,v)):h},i=(m,v)=>{let h=m;return n.value.years.includes(he(h))?(h=v?un(m,1):pr(m,1),i(h,v)):h},p=(m,v=!1)=>{const h=Ce(Q(),{month:e.month,year:e.year});let k=m?ft(h,1):Jt(h,1);e.disableYearSelect&&(k=_t(k,e.year));let Y=xe(k),f=he(k);n.value.months.includes(Y)&&(k=l(k,m),Y=xe(k),f=he(k)),n.value.years.includes(f)&&(k=i(k,m),f=he(k)),r(Y,f,m,e.preventMinMaxNavigation)&&c(Y,f,v)},c=(m,v,h)=>{t("update-month-year",{month:m,year:v,fromNav:h})},C=G(()=>m=>Mr(Ce(Q(),{month:e.month,year:e.year}),a.value.maxDate,a.value.minDate,e.preventMinMaxNavigation,m));return{handleMonthYearChange:p,isDisabled:C,updateMonthYear:c}},Ya={multiCalendars:{type:[Boolean,Number,String,Object],default:void 0},modelValue:{type:[String,Date,Array,Object,Number],default:null},modelType:{type:String,default:null},position:{type:String,default:"center"},dark:{type:Boolean,default:!1},format:{type:[String,Function],default:()=>null},autoPosition:{type:Boolean,default:!0},altPosition:{type:Function,default:null},transitions:{type:[Boolean,Object],default:!0},formatLocale:{type:Object,default:null},utc:{type:[Boolean,String],default:!1},ariaLabels:{type:Object,default:()=>({})},offset:{type:[Number,String],default:10},hideNavigation:{type:Array,default:()=>[]},timezone:{type:[String,Object],default:null},vertical:{type:Boolean,default:!1},disableMonthYearSelect:{type:Boolean,default:!1},disableYearSelect:{type:Boolean,default:!1},dayClass:{type:Function,default:null},yearRange:{type:Array,default:()=>[1900,2100]},enableTimePicker:{type:Boolean,default:!0},autoApply:{type:Boolean,default:!1},disabledDates:{type:[Array,Function],default:()=>[]},monthNameFormat:{type:String,default:"short"},startDate:{type:[Date,String],default:null},startTime:{type:[Object,Array],default:null},hideOffsetDates:{type:Boolean,default:!1},noToday:{type:Boolean,default:!1},disabledWeekDays:{type:Array,default:()=>[]},allowedDates:{type:Array,default:null},nowButtonLabel:{type:String,default:"Now"},markers:{type:Array,default:()=>[]},escClose:{type:Boolean,default:!0},spaceConfirm:{type:Boolean,default:!0},monthChangeOnArrows:{type:Boolean,default:!0},presetDates:{type:Array,default:()=>[]},flow:{type:Array,default:()=>[]},partialFlow:{type:Boolean,default:!1},preventMinMaxNavigation:{type:Boolean,default:!1},reverseYears:{type:Boolean,default:!1},weekPicker:{type:Boolean,default:!1},filters:{type:Object,default:()=>({})},arrowNavigation:{type:Boolean,default:!1},highlight:{type:[Function,Object],default:null},teleport:{type:[Boolean,String,Object],default:null},teleportCenter:{type:Boolean,default:!1},locale:{type:String,default:"en-Us"},weekNumName:{type:String,default:"W"},weekStart:{type:[Number,String],default:1},weekNumbers:{type:[String,Function,Object],default:null},monthChangeOnScroll:{type:[Boolean,String],default:!0},dayNames:{type:[Function,Array],default:null},monthPicker:{type:Boolean,default:!1},customProps:{type:Object,default:null},yearPicker:{type:Boolean,default:!1},modelAuto:{type:Boolean,default:!1},selectText:{type:String,default:"Select"},cancelText:{type:String,default:"Cancel"},previewFormat:{type:[String,Function],default:()=>""},multiDates:{type:[Object,Boolean],default:!1},ignoreTimeValidation:{type:Boolean,default:!1},minDate:{type:[Date,String],default:null},maxDate:{type:[Date,String],default:null},minTime:{type:Object,default:null},maxTime:{type:Object,default:null},name:{type:String,default:null},placeholder:{type:String,default:""},hideInputIcon:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},state:{type:Boolean,default:null},required:{type:Boolean,default:!1},autocomplete:{type:String,default:"off"},timePicker:{type:Boolean,default:!1},enableSeconds:{type:Boolean,default:!1},is24:{type:Boolean,default:!0},noHoursOverlay:{type:Boolean,default:!1},noMinutesOverlay:{type:Boolean,default:!1},noSecondsOverlay:{type:Boolean,default:!1},hoursGridIncrement:{type:[String,Number],default:1},minutesGridIncrement:{type:[String,Number],default:5},secondsGridIncrement:{type:[String,Number],default:5},hoursIncrement:{type:[Number,String],default:1},minutesIncrement:{type:[Number,String],default:1},secondsIncrement:{type:[Number,String],default:1},range:{type:[Boolean,Object],default:!1},uid:{type:String,default:null},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},inline:{type:[Boolean,Object],default:!1},textInput:{type:[Boolean,Object],default:!1},sixWeeks:{type:[Boolean,String],default:!1},actionRow:{type:Object,default:()=>({})},focusStartDate:{type:Boolean,default:!1},disabledTimes:{type:[Function,Array],default:void 0},timePickerInline:{type:Boolean,default:!1},calendar:{type:Function,default:null},config:{type:Object,default:void 0},quarterPicker:{type:Boolean,default:!1},yearFirst:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},onInternalModelChange:{type:[Function,Object],default:null},enableMinutes:{type:Boolean,default:!0},ui:{type:Object,default:()=>({})}},yt={...Ya,shadow:{type:Boolean,default:!1},flowStep:{type:Number,default:0},internalModelValue:{type:[Date,Array],default:null},noOverlayFocus:{type:Boolean,default:!1},collapse:{type:Boolean,default:!1},menuWrapRef:{type:Object,default:null},getInputRect:{type:Function,default:()=>({})},isTextInputDate:{type:Boolean,default:!1}},Si=["title"],Ri=["disabled"],Ii=ze({compatConfig:{MODE:3},__name:"ActionRow",props:{menuMount:{type:Boolean,default:!1},calendarWidth:{type:Number,default:0},...yt},emits:["close-picker","select-date","select-now","invalid-select"],setup(e,{emit:t}){const n=t,a=e,{defaultedActionRow:r,defaultedPreviewFormat:l,defaultedMultiCalendars:i,defaultedTextInput:p,defaultedInline:c,defaultedRange:C,defaultedMultiDates:m}=Se(a),{isTimeValid:v,isMonthValid:h}=Et(a),{buildMatrix:k}=It(),Y=Z(null),f=Z(null),S=Z(!1),I=Z({}),U=Z(null),A=Z(null);Ke(()=>{a.arrowNavigation&&k([Fe(Y),Fe(f)],"actionRow"),q(),window.addEventListener("resize",q)}),Ca(()=>{window.removeEventListener("resize",q)});const q=()=>{S.value=!1,setTimeout(()=>{var g,D;const y=(g=U.value)==null?void 0:g.getBoundingClientRect(),H=(D=A.value)==null?void 0:D.getBoundingClientRect();y&&H&&(I.value.maxWidth=`${H.width-y.width-20}px`),S.value=!0},0)},ae=G(()=>C.value.enabled&&!C.value.partialRange&&a.internalModelValue?a.internalModelValue.length===2:!0),E=G(()=>!v.value(a.internalModelValue)||!h.value(a.internalModelValue)||!ae.value),B=()=>{const g=l.value;return a.timePicker||a.monthPicker,g(qe(a.internalModelValue))},ne=()=>{const g=a.internalModelValue;return i.value.count>0?`${F(g[0])} - ${F(g[1])}`:[F(g[0]),F(g[1])]},F=g=>Dr(g,l.value,a.formatLocale,p.value.rangeSeparator,a.modelAuto,l.value),N=G(()=>!a.internalModelValue||!a.menuMount?"":typeof l.value=="string"?Array.isArray(a.internalModelValue)?a.internalModelValue.length===2&&a.internalModelValue[1]?ne():m.value.enabled?a.internalModelValue.map(g=>`${F(g)}`):a.modelAuto?`${F(a.internalModelValue[0])}`:`${F(a.internalModelValue[0])} -`:F(a.internalModelValue):B()),ie=()=>m.value.enabled?"; ":" - ",ce=G(()=>Array.isArray(N.value)?N.value.join(ie()):N.value),pe=()=>{v.value(a.internalModelValue)&&h.value(a.internalModelValue)&&ae.value?n("select-date"):n("invalid-select")};return(g,D)=>(P(),W("div",{ref_key:"actionRowRef",ref:A,class:"dp__action_row"},[g.$slots["action-row"]?ue(g.$slots,"action-row",We(Qe({key:0},{internalModelValue:g.internalModelValue,disabled:E.value,selectDate:()=>g.$emit("select-date"),closePicker:()=>g.$emit("close-picker")}))):(P(),W(we,{key:1},[d(r).showPreview?(P(),W("div",{key:0,class:"dp__selection_preview",title:ce.value,style:dt(I.value)},[g.$slots["action-preview"]&&S.value?ue(g.$slots,"action-preview",{key:0,value:g.internalModelValue}):j("",!0),!g.$slots["action-preview"]&&S.value?(P(),W(we,{key:1},[Dt(Ge(ce.value),1)],64)):j("",!0)],12,Si)):j("",!0),ye("div",{ref_key:"actionBtnContainer",ref:U,class:"dp__action_buttons","data-dp-element":"action-row"},[g.$slots["action-buttons"]?ue(g.$slots,"action-buttons",{key:0,value:g.internalModelValue}):j("",!0),g.$slots["action-buttons"]?j("",!0):(P(),W(we,{key:1},[!d(c).enabled&&d(r).showCancel?(P(),W("button",{key:0,ref_key:"cancelButtonRef",ref:Y,type:"button",class:"dp__action_button dp__action_cancel",onClick:D[0]||(D[0]=y=>g.$emit("close-picker")),onKeydown:D[1]||(D[1]=y=>d(et)(y,()=>g.$emit("close-picker")))},Ge(g.cancelText),545)):j("",!0),d(r).showNow?(P(),W("button",{key:1,type:"button",class:"dp__action_button dp__action_cancel",onClick:D[2]||(D[2]=y=>g.$emit("select-now")),onKeydown:D[3]||(D[3]=y=>d(et)(y,()=>g.$emit("select-now")))},Ge(g.nowButtonLabel),33)):j("",!0),d(r).showSelect?(P(),W("button",{key:2,ref_key:"selectButtonRef",ref:f,type:"button",class:"dp__action_button dp__action_select",disabled:E.value,"data-test":"select-button",onKeydown:D[4]||(D[4]=y=>d(et)(y,()=>pe())),onClick:pe},Ge(g.selectText),41,Ri)):j("",!0)],64))],512)],64))],512))}}),Ei=["role","aria-label","tabindex"],Bi={class:"dp__selection_grid_header"},Ni=["aria-selected","aria-disabled","data-test","onClick","onKeydown","onMouseover"],Li=["aria-label"],ya=ze({__name:"SelectionOverlay",props:{items:{},type:{},isLast:{type:Boolean},arrowNavigation:{type:Boolean},skipButtonRef:{type:Boolean},headerRefs:{},hideNavigation:{},escClose:{type:Boolean},useRelative:{type:Boolean},height:{},textInput:{type:[Boolean,Object]},config:{},noOverlayFocus:{type:Boolean},focusValue:{},menuWrapRef:{},ariaLabels:{},overlayLabel:{}},emits:["selected","toggle","reset-flow","hover-value"],setup(e,{expose:t,emit:n}){const{setSelectionGrid:a,buildMultiLevelMatrix:r,setMonthPicker:l}=It(),i=n,p=e,{defaultedAriaLabels:c,defaultedTextInput:C,defaultedConfig:m}=Se(p),{hideNavigationButtons:v}=Ia(),h=Z(!1),k=Z(null),Y=Z(null),f=Z([]),S=Z(),I=Z(null),U=Z(0),A=Z(null);Hr(()=>{k.value=null}),Ke(()=>{it().then(()=>ie()),p.noOverlayFocus||ae(),q(!0)}),Ca(()=>q(!1));const q=V=>{var M;p.arrowNavigation&&((M=p.headerRefs)!=null&&M.length?l(V):a(V))},ae=()=>{var V;const M=Fe(Y);M&&(C.value.enabled||(k.value?(V=k.value)==null||V.focus({preventScroll:!0}):M.focus({preventScroll:!0})),h.value=M.clientHeight({dp__overlay:!0,"dp--overlay-absolute":!p.useRelative,"dp--overlay-relative":p.useRelative})),B=G(()=>p.useRelative?{height:`${p.height}px`,width:"var(--dp-menu-min-width)"}:void 0),ne=G(()=>({dp__overlay_col:!0})),F=G(()=>({dp__btn:!0,dp__button:!0,dp__overlay_action:!0,dp__over_action_scroll:h.value,dp__button_bottom:p.isLast})),N=G(()=>{var V,M;return{dp__overlay_container:!0,dp__container_flex:((V=p.items)==null?void 0:V.length)<=6,dp__container_block:((M=p.items)==null?void 0:M.length)>6}});ct(()=>p.items,()=>ie(!1),{deep:!0});const ie=(V=!0)=>{it().then(()=>{const M=Fe(k),o=Fe(Y),w=Fe(I),z=Fe(A),u=w?w.getBoundingClientRect().height:0;o&&(o.getBoundingClientRect().height?U.value=o.getBoundingClientRect().height-u:U.value=m.value.modeHeight-u),M&&z&&V&&(z.scrollTop=M.offsetTop-z.offsetTop-(U.value/2-M.getBoundingClientRect().height)-u)})},ce=V=>{V.disabled||i("selected",V.value)},pe=()=>{i("toggle"),i("reset-flow")},g=()=>{p.escClose&&pe()},D=(V,M,o,w)=>{V&&((M.active||M.value===p.focusValue)&&(k.value=V),p.arrowNavigation&&(Array.isArray(f.value[o])?f.value[o][w]=V:f.value[o]=[V],y()))},y=()=>{var V,M;const o=(V=p.headerRefs)!=null&&V.length?[p.headerRefs].concat(f.value):f.value.concat([p.skipButtonRef?[]:[I.value]]);r(qe(o),(M=p.headerRefs)!=null&&M.length?"monthPicker":"selectionGrid")},H=V=>{p.arrowNavigation||Yt(V,m.value,!0)},re=V=>{S.value=V,i("hover-value",V)},R=()=>{if(pe(),!p.isLast){const V=on(p.menuWrapRef??null,"action-row");if(V){const M=gr(V);M?.focus()}}},b=V=>{switch(V.key){case $e.esc:return g();case $e.arrowLeft:return H(V);case $e.arrowRight:return H(V);case $e.arrowUp:return H(V);case $e.arrowDown:return H(V);default:return}},oe=V=>{if(V.key===$e.enter)return pe();if(V.key===$e.tab)return R()};return t({focusGrid:ae}),(V,M)=>{var o;return P(),W("div",{ref_key:"gridWrapRef",ref:Y,class:ke(E.value),style:dt(B.value),role:V.useRelative?void 0:"dialog","aria-label":V.overlayLabel,tabindex:V.useRelative?void 0:"0",onKeydown:b,onClick:M[0]||(M[0]=va(()=>{},["prevent"]))},[ye("div",{ref_key:"containerRef",ref:A,class:ke(N.value),style:dt({"--dp-overlay-height":`${U.value}px`}),role:"grid"},[ye("div",Bi,[ue(V.$slots,"header")]),V.$slots.overlay?ue(V.$slots,"overlay",{key:0}):(P(!0),W(we,{key:1},Ye(V.items,(w,z)=>(P(),W("div",{key:z,class:ke(["dp__overlay_row",{dp__flex_row:V.items.length>=3}]),role:"row"},[(P(!0),W(we,null,Ye(w,(u,le)=>(P(),W("div",{key:u.value,ref_for:!0,ref:fe=>D(fe,u,z,le),role:"gridcell",class:ke(ne.value),"aria-selected":u.active||void 0,"aria-disabled":u.disabled||void 0,tabindex:"0","data-test":u.text,onClick:va(fe=>ce(u),["prevent"]),onKeydown:fe=>d(et)(fe,()=>ce(u),!0),onMouseover:fe=>re(u.value)},[ye("div",{class:ke(u.className)},[V.$slots.item?ue(V.$slots,"item",{key:0,item:u}):j("",!0),V.$slots.item?j("",!0):(P(),W(we,{key:1},[Dt(Ge(u.text),1)],64))],2)],42,Ni))),128))],2))),128))],6),V.$slots["button-icon"]?Ma((P(),W("button",{key:0,ref_key:"toggleButton",ref:I,type:"button","aria-label":(o=d(c))==null?void 0:o.toggleOverlay,class:ke(F.value),tabindex:"0",onClick:pe,onKeydown:oe},[ue(V.$slots,"button-icon")],42,Li)),[[Da,!d(v)(V.hideNavigation,V.type)]]):j("",!0)],46,Ei)}}}),Sa=ze({__name:"InstanceWrap",props:{multiCalendars:{},stretch:{type:Boolean},collapse:{type:Boolean}},setup(e){const t=e,n=G(()=>t.multiCalendars>0?[...Array(t.multiCalendars).keys()]:[0]),a=G(()=>({dp__instance_calendar:t.multiCalendars>0}));return(r,l)=>(P(),W("div",{class:ke({dp__menu_inner:!r.stretch,"dp--menu--inner-stretched":r.stretch,dp__flex_display:r.multiCalendars>0,"dp--flex-display-collapsed":r.collapse})},[(P(!0),W(we,null,Ye(n.value,(i,p)=>(P(),W("div",{key:i,class:ke(a.value)},[ue(r.$slots,"default",{instance:i,index:p})],2))),128))],2))}}),Hi=["data-dp-element","aria-label","aria-disabled"],da=ze({compatConfig:{MODE:3},__name:"ArrowBtn",props:{ariaLabel:{},elName:{},disabled:{type:Boolean}},emits:["activate","set-ref"],setup(e,{emit:t}){const n=t,a=Z(null);return Ke(()=>n("set-ref",a)),(r,l)=>(P(),W("button",{ref_key:"elRef",ref:a,type:"button","data-dp-element":r.elName,class:"dp__btn dp--arrow-btn-nav",tabindex:"0","aria-label":r.ariaLabel,"aria-disabled":r.disabled||void 0,onClick:l[0]||(l[0]=i=>r.$emit("activate")),onKeydown:l[1]||(l[1]=i=>d(et)(i,()=>r.$emit("activate"),!0))},[ye("span",{class:ke(["dp__inner_nav",{dp__inner_nav_disabled:r.disabled}])},[ue(r.$slots,"default")],2)],40,Hi))}}),Vi=["aria-label","data-test"],Cr=ze({__name:"YearModePicker",props:{...yt,showYearPicker:{type:Boolean,default:!1},items:{type:Array,default:()=>[]},instance:{type:Number,default:0},year:{type:Number,default:0},isDisabled:{type:Function,default:()=>!1}},emits:["toggle-year-picker","year-select","handle-year"],setup(e,{emit:t}){const n=t,a=e,{showRightIcon:r,showLeftIcon:l}=Ia(),{defaultedConfig:i,defaultedMultiCalendars:p,defaultedAriaLabels:c,defaultedTransitions:C,defaultedUI:m}=Se(a),{showTransition:v,transitionName:h}=ga(C),k=Z(!1),Y=(I=!1,U)=>{k.value=!k.value,n("toggle-year-picker",{flow:I,show:U})},f=I=>{k.value=!1,n("year-select",I)},S=(I=!1)=>{n("handle-year",I)};return(I,U)=>{var A,q,ae,E,B;return P(),W(we,null,[ye("div",{class:ke(["dp--year-mode-picker",{"dp--hidden-el":k.value}])},[d(l)(d(p),e.instance)?(P(),De(da,{key:0,ref:"mpPrevIconRef","aria-label":(A=d(c))==null?void 0:A.prevYear,disabled:e.isDisabled(!1),class:ke((q=d(m))==null?void 0:q.navBtnPrev),onActivate:U[0]||(U[0]=ne=>S(!1))},{default:_e(()=>[I.$slots["arrow-left"]?ue(I.$slots,"arrow-left",{key:0}):j("",!0),I.$slots["arrow-left"]?j("",!0):(P(),De(d(fn),{key:1}))]),_:3},8,["aria-label","disabled","class"])):j("",!0),ye("button",{ref:"mpYearButtonRef",class:"dp__btn dp--year-select",type:"button","aria-label":`${e.year}-${(ae=d(c))==null?void 0:ae.openYearsOverlay}`,"data-test":`year-mode-btn-${e.instance}`,onClick:U[1]||(U[1]=()=>Y(!1)),onKeydown:U[2]||(U[2]=Vr(()=>Y(!1),["enter"]))},[I.$slots.year?ue(I.$slots,"year",{key:0,year:e.year}):j("",!0),I.$slots.year?j("",!0):(P(),W(we,{key:1},[Dt(Ge(e.year),1)],64))],40,Vi),d(r)(d(p),e.instance)?(P(),De(da,{key:1,ref:"mpNextIconRef","aria-label":(E=d(c))==null?void 0:E.nextYear,disabled:e.isDisabled(!0),class:ke((B=d(m))==null?void 0:B.navBtnNext),onActivate:U[3]||(U[3]=ne=>S(!0))},{default:_e(()=>[I.$slots["arrow-right"]?ue(I.$slots,"arrow-right",{key:0}):j("",!0),I.$slots["arrow-right"]?j("",!0):(P(),De(d(hn),{key:1}))]),_:3},8,["aria-label","disabled","class"])):j("",!0)],2),ot(ta,{name:d(h)(e.showYearPicker),css:d(v)},{default:_e(()=>{var ne,F;return[e.showYearPicker?(P(),De(ya,{key:0,items:e.items,"text-input":I.textInput,"esc-close":I.escClose,config:I.config,"is-last":I.autoApply&&!d(i).keepActionRow,"hide-navigation":I.hideNavigation,"aria-labels":I.ariaLabels,"overlay-label":(F=(ne=d(c))==null?void 0:ne.yearPicker)==null?void 0:F.call(ne,!0),type:"year",onToggle:Y,onSelected:U[4]||(U[4]=N=>f(N))},je({"button-icon":_e(()=>[I.$slots["calendar-icon"]?ue(I.$slots,"calendar-icon",{key:0}):j("",!0),I.$slots["calendar-icon"]?j("",!0):(P(),De(d(aa),{key:1}))]),_:2},[I.$slots["year-overlay-value"]?{name:"item",fn:_e(({item:N})=>[ue(I.$slots,"year-overlay-value",{text:N.text,value:N.value})]),key:"0"}:void 0]),1032,["items","text-input","esc-close","config","is-last","hide-navigation","aria-labels","overlay-label"])):j("",!0)]}),_:3},8,["name","css"])],64)}}}),Dn=(e,t,n)=>{if(t.value&&Array.isArray(t.value))if(t.value.some(a=>Me(e,a))){const a=t.value.filter(r=>!Me(r,e));t.value=a.length?a:null}else(n&&+n>t.value.length||!n)&&t.value.push(e);else t.value=[e]},Tn=(e,t,n)=>{let a=e.value?e.value.slice():[];return a.length===2&&a[1]!==null&&(a=[]),a.length?Ie(t,a[0])?(a.unshift(t),n("range-start",a[0]),n("range-start",a[1])):(a[1]=t,n("range-end",t)):(a=[t],n("range-start",t)),a},Ra=(e,t,n,a)=>{e&&(e[0]&&e[1]&&n&&t("auto-apply"),e[0]&&!e[1]&&a&&n&&t("auto-apply"))},Or=e=>{Array.isArray(e.value)&&e.value.length<=2&&e.range?e.modelValue.value=e.value.map(t=>nt(Q(t),e.timezone)):Array.isArray(e.value)||(e.modelValue.value=nt(Q(e.value),e.timezone))},$r=(e,t,n,a)=>Array.isArray(t.value)&&(t.value.length===2||t.value.length===1&&a.value.partialRange)?a.value.fixedStart&&(Ne(e,t.value[0])||Me(e,t.value[0]))?[t.value[0],e]:a.value.fixedEnd&&(Ie(e,t.value[1])||Me(e,t.value[1]))?[e,t.value[1]]:(n("invalid-fixed-range",e),t.value):[],Yr=({multiCalendars:e,range:t,highlight:n,propDates:a,calendars:r,modelValue:l,props:i,filters:p,year:c,month:C,emit:m})=>{const v=G(()=>_n(i.yearRange,i.locale,i.reverseYears)),h=Z([!1]),k=G(()=>(N,ie)=>{const ce=Ce(pt(new Date),{month:C.value(N),year:c.value(N)}),pe=ie?tr(ce):ma(ce);return Mr(pe,a.value.maxDate,a.value.minDate,i.preventMinMaxNavigation,ie)}),Y=()=>Array.isArray(l.value)&&e.value.solo&&l.value[1],f=()=>{for(let N=0;N{if(!N)return f();const ie=Ce(Q(),r.value[N]);return r.value[0].year=he(pr(ie,e.value.count-1)),f()},I=(N,ie)=>{const ce=Zr(ie,N);return t.value.showLastInRange&&ce>1?ie:N},U=N=>i.focusStartDate||e.value.solo?N[0]:N[1]?I(N[0],N[1]):N[0],A=()=>{if(l.value){const N=Array.isArray(l.value)?U(l.value):l.value;r.value[0]={month:xe(N),year:he(N)}}},q=()=>{A(),e.value.count&&f()};ct(l,(N,ie)=>{i.isTextInputDate&&JSON.stringify(N??{})!==JSON.stringify(ie??{})&&q()}),Ke(()=>{q()});const ae=(N,ie)=>{r.value[ie].year=N,m("update-month-year",{instance:ie,year:N,month:r.value[ie].month}),e.value.count&&!e.value.solo&&S(ie)},E=G(()=>N=>Zt(v.value,ie=>{var ce;const pe=c.value(N)===ie.value,g=fa(ie.value,ea(a.value.minDate),ea(a.value.maxDate))||((ce=p.value.years)==null?void 0:ce.includes(c.value(N))),D=Mn(n.value,ie.value);return{active:pe,disabled:g,highlighted:D}})),B=(N,ie)=>{ae(N,ie),F(ie)},ne=(N,ie=!1)=>{if(!k.value(N,ie)){const ce=ie?c.value(N)+1:c.value(N)-1;ae(ce,N)}},F=(N,ie=!1,ce)=>{ie||m("reset-flow"),ce!==void 0?h.value[N]=ce:h.value[N]=!h.value[N],h.value[N]?m("overlay-toggle",{open:!0,overlay:Xe.year}):(m("overlay-closed"),m("overlay-toggle",{open:!1,overlay:Xe.year}))};return{isDisabled:k,groupedYears:E,showYearPicker:h,selectYear:ae,toggleYearPicker:F,handleYearSelect:B,handleYear:ne}},Fi=(e,t)=>{const{defaultedMultiCalendars:n,defaultedAriaLabels:a,defaultedTransitions:r,defaultedConfig:l,defaultedRange:i,defaultedHighlight:p,propDates:c,defaultedTz:C,defaultedFilters:m,defaultedMultiDates:v}=Se(e),h=()=>{e.isTextInputDate&&q(he(Q(e.startDate)),0)},{modelValue:k,year:Y,month:f,calendars:S}=ba(e,t,h),I=G(()=>hr(e.formatLocale,e.locale,e.monthNameFormat)),U=Z(null),{checkMinMaxRange:A}=Et(e),{selectYear:q,groupedYears:ae,showYearPicker:E,toggleYearPicker:B,handleYearSelect:ne,handleYear:F,isDisabled:N}=Yr({modelValue:k,multiCalendars:n,range:i,highlight:p,calendars:S,year:Y,propDates:c,month:f,filters:m,props:e,emit:t});Ke(()=>{e.startDate&&(k.value&&e.focusStartDate||!k.value)&&q(he(Q(e.startDate)),0)});const ie=o=>o?{month:xe(o),year:he(o)}:{month:null,year:null},ce=()=>k.value?Array.isArray(k.value)?k.value.map(o=>ie(o)):ie(k.value):ie(),pe=(o,w)=>{const z=S.value[o],u=ce();return Array.isArray(u)?u.some(le=>le.year===z?.year&&le.month===w):z?.year===u.year&&w===u.month},g=(o,w,z)=>{var u,le;const fe=ce();return Array.isArray(fe)?Y.value(w)===((u=fe[z])==null?void 0:u.year)&&o===((le=fe[z])==null?void 0:le.month):!1},D=(o,w)=>{if(i.value.enabled){const z=ce();if(Array.isArray(k.value)&&Array.isArray(z)){const u=g(o,w,0)||g(o,w,1),le=Mt(pt(Q()),o,Y.value(w));return $a(k.value,U.value,le)&&!u}return!1}return!1},y=G(()=>o=>Zt(I.value,w=>{var z;const u=pe(o,w.value),le=fa(w.value,wr(Y.value(o),c.value.minDate),_r(Y.value(o),c.value.maxDate))||mi(c.value.disabledDates,Y.value(o)).includes(w.value)||((z=m.value.months)==null?void 0:z.includes(w.value)),fe=D(w.value,o),Ve=Tr(p.value,w.value,Y.value(o));return{active:u,disabled:le,isBetween:fe,highlighted:Ve}})),H=(o,w)=>Mt(pt(Q()),o,Y.value(w)),re=(o,w)=>{const z=k.value?k.value:pt(new Date);k.value=Mt(z,o,Y.value(w)),t("auto-apply"),t("update-flow-step")},R=(o,w)=>{const z=H(o,w);i.value.fixedEnd||i.value.fixedStart?k.value=$r(z,k,t,i):k.value?A(z,k.value)&&(k.value=Tn(k,H(o,w),t)):k.value=[H(o,w)],it().then(()=>{Ra(k.value,t,e.autoApply,e.modelAuto)})},b=(o,w)=>{Dn(H(o,w),k,v.value.limit),t("auto-apply",!0)},oe=(o,w)=>(S.value[w].month=o,M(w,S.value[w].year,o),v.value.enabled?b(o,w):i.value.enabled?R(o,w):re(o,w)),V=(o,w)=>{q(o,w),M(w,o,null)},M=(o,w,z)=>{let u=z;if(!u&&u!==0){const le=ce();u=Array.isArray(le)?le[o].month:le.month}t("update-month-year",{instance:o,year:w,month:u})};return{groupedMonths:y,groupedYears:ae,year:Y,isDisabled:N,defaultedMultiCalendars:n,defaultedAriaLabels:a,defaultedTransitions:r,defaultedConfig:l,showYearPicker:E,modelValue:k,presetDate:(o,w)=>{Or({value:o,modelValue:k,range:i.value.enabled,timezone:w?void 0:C.value.timezone}),t("auto-apply")},setHoverDate:(o,w)=>{U.value=H(o,w)},selectMonth:oe,selectYear:V,toggleYearPicker:B,handleYearSelect:ne,handleYear:F,getModelMonthYear:ce}},qi=ze({compatConfig:{MODE:3},__name:"MonthPicker",props:{...yt},emits:["update:internal-model-value","overlay-closed","reset-flow","range-start","range-end","auto-apply","update-month-year","update-flow-step","mount","invalid-fixed-range","overlay-toggle"],setup(e,{expose:t,emit:n}){const a=n,r=qt(),l=lt(r,"yearMode"),i=e;Ke(()=>{i.shadow||a("mount",null)});const{groupedMonths:p,groupedYears:c,year:C,isDisabled:m,defaultedMultiCalendars:v,defaultedConfig:h,showYearPicker:k,modelValue:Y,presetDate:f,setHoverDate:S,selectMonth:I,selectYear:U,toggleYearPicker:A,handleYearSelect:q,handleYear:ae,getModelMonthYear:E}=Fi(i,a);return t({getSidebarProps:()=>({modelValue:Y,year:C,getModelMonthYear:E,selectMonth:I,selectYear:U,handleYear:ae}),presetDate:f,toggleYearPicker:B=>A(0,B)}),(B,ne)=>(P(),De(Sa,{"multi-calendars":d(v).count,collapse:B.collapse,stretch:""},{default:_e(({instance:F})=>[B.$slots["top-extra"]?ue(B.$slots,"top-extra",{key:0,value:B.internalModelValue}):j("",!0),B.$slots["month-year"]?ue(B.$slots,"month-year",We(Qe({key:1},{year:d(C),months:d(p)(F),years:d(c)(F),selectMonth:d(I),selectYear:d(U),instance:F}))):(P(),De(ya,{key:2,items:d(p)(F),"arrow-navigation":B.arrowNavigation,"is-last":B.autoApply&&!d(h).keepActionRow,"esc-close":B.escClose,height:d(h).modeHeight,config:B.config,"no-overlay-focus":!!(B.noOverlayFocus||B.textInput),"use-relative":"",type:"month",onSelected:N=>d(I)(N,F),onHoverValue:N=>d(S)(N,F)},je({header:_e(()=>[ot(Cr,Qe(B.$props,{items:d(c)(F),instance:F,"show-year-picker":d(k)[F],year:d(C)(F),"is-disabled":N=>d(m)(F,N),onHandleYear:N=>d(ae)(F,N),onYearSelect:N=>d(q)(N,F),onToggleYearPicker:N=>d(A)(F,N?.flow,N?.show)}),je({_:2},[Ye(d(l),(N,ie)=>({name:N,fn:_e(ce=>[ue(B.$slots,N,We(at(ce)))])}))]),1040,["items","instance","show-year-picker","year","is-disabled","onHandleYear","onYearSelect","onToggleYearPicker"])]),_:2},[B.$slots["month-overlay-value"]?{name:"item",fn:_e(({item:N})=>[ue(B.$slots,"month-overlay-value",{text:N.text,value:N.value})]),key:"0"}:void 0]),1032,["items","arrow-navigation","is-last","esc-close","height","config","no-overlay-focus","onSelected","onHoverValue"]))]),_:3},8,["multi-calendars","collapse"]))}}),Wi=(e,t)=>{const n=()=>{e.isTextInputDate&&(m.value=he(Q(e.startDate)))},{modelValue:a}=ba(e,t,n),r=Z(null),{defaultedHighlight:l,defaultedMultiDates:i,defaultedFilters:p,defaultedRange:c,propDates:C}=Se(e),m=Z();Ke(()=>{e.startDate&&(a.value&&e.focusStartDate||!a.value)&&(m.value=he(Q(e.startDate)))});const v=f=>Array.isArray(a.value)?a.value.some(S=>he(S)===f):a.value?he(a.value)===f:!1,h=f=>c.value.enabled&&Array.isArray(a.value)?$a(a.value,r.value,Y(f)):!1,k=G(()=>Zt(_n(e.yearRange,e.locale,e.reverseYears),f=>{const S=v(f.value),I=fa(f.value,ea(C.value.minDate),ea(C.value.maxDate))||p.value.years.includes(f.value),U=h(f.value)&&!S,A=Mn(l.value,f.value);return{active:S,disabled:I,isBetween:U,highlighted:A}})),Y=f=>_t(pt(ma(new Date)),f);return{groupedYears:k,modelValue:a,focusYear:m,setHoverValue:f=>{r.value=_t(pt(new Date),f)},selectYear:f=>{var S;if(t("update-month-year",{instance:0,year:f}),i.value.enabled)return a.value?Array.isArray(a.value)&&(((S=a.value)==null?void 0:S.map(I=>he(I))).includes(f)?a.value=a.value.filter(I=>he(I)!==f):a.value.push(_t(tt(Q()),f))):a.value=[_t(tt(ma(Q())),f)],t("auto-apply",!0);c.value.enabled?(a.value=Tn(a,Y(f),t),it().then(()=>{Ra(a.value,t,e.autoApply,e.modelAuto)})):(a.value=Y(f),t("auto-apply"))}}},Qi=ze({compatConfig:{MODE:3},__name:"YearPicker",props:{...yt},emits:["update:internal-model-value","reset-flow","range-start","range-end","auto-apply","update-month-year"],setup(e,{expose:t,emit:n}){const a=n,r=e,{groupedYears:l,modelValue:i,focusYear:p,selectYear:c,setHoverValue:C}=Wi(r,a),{defaultedConfig:m}=Se(r);return t({getSidebarProps:()=>({modelValue:i,selectYear:c})}),(v,h)=>(P(),W("div",null,[v.$slots["top-extra"]?ue(v.$slots,"top-extra",{key:0,value:v.internalModelValue}):j("",!0),v.$slots["month-year"]?ue(v.$slots,"month-year",We(Qe({key:1},{years:d(l),selectYear:d(c)}))):(P(),De(ya,{key:2,items:d(l),"is-last":v.autoApply&&!d(m).keepActionRow,height:d(m).modeHeight,config:v.config,"no-overlay-focus":!!(v.noOverlayFocus||v.textInput),"focus-value":d(p),type:"year","use-relative":"",onSelected:d(c),onHoverValue:d(C)},je({_:2},[v.$slots["year-overlay-value"]?{name:"item",fn:_e(({item:k})=>[ue(v.$slots,"year-overlay-value",{text:k.text,value:k.value})]),key:"0"}:void 0]),1032,["items","is-last","height","config","no-overlay-focus","focus-value","onSelected","onHoverValue"]))]))}}),zi={key:0,class:"dp__time_input"},Ui=["data-test","aria-label","onKeydown","onClick","onMousedown"],Xi=["aria-label","disabled","data-test","onKeydown","onClick"],Gi=["data-test","aria-label","onKeydown","onClick","onMousedown"],ji={key:0},Ki=["aria-label"],Ji=ze({compatConfig:{MODE:3},__name:"TimeInput",props:{hours:{type:Number,default:0},minutes:{type:Number,default:0},seconds:{type:Number,default:0},closeTimePickerBtn:{type:Object,default:null},order:{type:Number,default:0},disabledTimesConfig:{type:Function,default:null},validateTime:{type:Function,default:()=>!1},...yt},emits:["set-hours","set-minutes","update:hours","update:minutes","update:seconds","reset-flow","mounted","overlay-closed","overlay-opened","am-pm-change"],setup(e,{expose:t,emit:n}){const a=n,r=e,{setTimePickerElements:l,setTimePickerBackRef:i}=It(),{defaultedAriaLabels:p,defaultedTransitions:c,defaultedFilters:C,defaultedConfig:m,defaultedRange:v}=Se(r),{transitionName:h,showTransition:k}=ga(c),Y=ha({hours:!1,minutes:!1,seconds:!1}),f=Z("AM"),S=Z(null),I=Z([]),U=Z(),A=Z(!1);Ke(()=>{a("mounted")});const q=s=>Ce(new Date,{hours:s.hours,minutes:s.minutes,seconds:r.enableSeconds?s.seconds:0,milliseconds:0}),ae=G(()=>s=>H(s,r[s])||B(s,r[s])),E=G(()=>({hours:r.hours,minutes:r.minutes,seconds:r.seconds})),B=(s,L)=>v.value.enabled&&!v.value.disableTimeRangeValidation?!r.validateTime(s,L):!1,ne=(s,L)=>{if(v.value.enabled&&!v.value.disableTimeRangeValidation){const J=L?+r[`${s}Increment`]:-+r[`${s}Increment`],$=r[s]+J;return!r.validateTime(s,$)}return!1},F=G(()=>s=>!V(+r[s]+ +r[`${s}Increment`],s)||ne(s,!0)),N=G(()=>s=>!V(+r[s]-+r[`${s}Increment`],s)||ne(s,!1)),ie=(s,L)=>Xn(Ce(Q(),s),L),ce=(s,L)=>Go(Ce(Q(),s),L),pe=G(()=>({dp__time_col:!0,dp__time_col_block:!r.timePickerInline,dp__time_col_reg_block:!r.enableSeconds&&r.is24&&!r.timePickerInline,dp__time_col_reg_inline:!r.enableSeconds&&r.is24&&r.timePickerInline,dp__time_col_reg_with_button:!r.enableSeconds&&!r.is24,dp__time_col_sec:r.enableSeconds&&r.is24,dp__time_col_sec_with_button:r.enableSeconds&&!r.is24})),g=G(()=>{const s=[{type:"hours"}];return r.enableMinutes&&s.push({type:"",separator:!0},{type:"minutes"}),r.enableSeconds&&s.push({type:"",separator:!0},{type:"seconds"}),s}),D=G(()=>g.value.filter(s=>!s.separator)),y=G(()=>s=>{if(s==="hours"){const L=le(+r.hours);return{text:L<10?`0${L}`:`${L}`,value:L}}return{text:r[s]<10?`0${r[s]}`:`${r[s]}`,value:r[s]}}),H=(s,L)=>{var J;if(!r.disabledTimesConfig)return!1;const $=r.disabledTimesConfig(r.order,s==="hours"?L:void 0);return $[s]?!!((J=$[s])!=null&&J.includes(L)):!0},re=(s,L)=>L!=="hours"||f.value==="AM"?s:s+12,R=s=>{const L=r.is24?24:12,J=s==="hours"?L:60,$=+r[`${s}GridIncrement`],ge=s==="hours"&&!r.is24?$:0,x=[];for(let X=ge;X({active:!1,disabled:C.value.times[s].includes(X.value)||!V(X.value,s)||H(s,X.value)||B(s,X.value)}))},b=s=>s>=0?s:59,oe=s=>s>=0?s:23,V=(s,L)=>{const J=r.minTime?q(za(r.minTime)):null,$=r.maxTime?q(za(r.maxTime)):null,ge=q(za(E.value,L,L==="minutes"||L==="seconds"?b(s):oe(s)));return J&&$?(pa(ge,$)||Xt(ge,$))&&(Kt(ge,J)||Xt(ge,J)):J?Kt(ge,J)||Xt(ge,J):$?pa(ge,$)||Xt(ge,$):!0},M=s=>r[`no${s[0].toUpperCase()+s.slice(1)}Overlay`],o=s=>{M(s)||(Y[s]=!Y[s],Y[s]?(A.value=!0,a("overlay-opened",s)):(A.value=!1,a("overlay-closed",s)))},w=s=>s==="hours"?Tt:s==="minutes"?Rt:jt,z=()=>{U.value&&clearTimeout(U.value)},u=(s,L=!0,J)=>{const $=L?ie:ce,ge=L?+r[`${s}Increment`]:-+r[`${s}Increment`];V(+r[s]+ge,s)&&a(`update:${s}`,w(s)($({[s]:+r[s]},{[s]:+r[`${s}Increment`]}))),!(J!=null&&J.keyboard)&&m.value.timeArrowHoldThreshold&&(U.value=setTimeout(()=>{u(s,L)},m.value.timeArrowHoldThreshold))},le=s=>r.is24?s:(s>=12?f.value="PM":f.value="AM",ti(s)),fe=()=>{f.value==="PM"?(f.value="AM",a("update:hours",r.hours-12)):(f.value="PM",a("update:hours",r.hours+12)),a("am-pm-change",f.value)},Ve=s=>{Y[s]=!0},T=(s,L,J)=>{if(s&&r.arrowNavigation){Array.isArray(I.value[L])?I.value[L][J]=s:I.value[L]=[s];const $=I.value.reduce((ge,x)=>x.map((X,de)=>[...ge[de]||[],x[de]]),[]);i(r.closeTimePickerBtn),S.value&&($[1]=$[1].concat(S.value)),l($,r.order)}},K=(s,L)=>(o(s),a(`update:${s}`,L));return t({openChildCmp:Ve}),(s,L)=>{var J;return s.disabled?j("",!0):(P(),W("div",zi,[(P(!0),W(we,null,Ye(g.value,($,ge)=>{var x,X,de;return P(),W("div",{key:ge,class:ke(pe.value)},[$.separator?(P(),W(we,{key:0},[A.value?j("",!0):(P(),W(we,{key:0},[Dt(":")],64))],64)):(P(),W(we,{key:1},[ye("button",{ref_for:!0,ref:be=>T(be,ge,0),type:"button",class:ke({dp__btn:!0,dp__inc_dec_button:!s.timePickerInline,dp__inc_dec_button_inline:s.timePickerInline,dp__tp_inline_btn_top:s.timePickerInline,dp__inc_dec_button_disabled:F.value($.type),"dp--hidden-el":A.value}),"data-test":`${$.type}-time-inc-btn-${r.order}`,"aria-label":(x=d(p))==null?void 0:x.incrementValue($.type),tabindex:"0",onKeydown:be=>d(et)(be,()=>u($.type,!0,{keyboard:!0}),!0),onClick:be=>d(m).timeArrowHoldThreshold?void 0:u($.type,!0),onMousedown:be=>d(m).timeArrowHoldThreshold?u($.type,!0):void 0,onMouseup:z},[r.timePickerInline?(P(),W(we,{key:1},[s.$slots["tp-inline-arrow-up"]?ue(s.$slots,"tp-inline-arrow-up",{key:0}):(P(),W(we,{key:1},[L[2]||(L[2]=ye("span",{class:"dp__tp_inline_btn_bar dp__tp_btn_in_l"},null,-1)),L[3]||(L[3]=ye("span",{class:"dp__tp_inline_btn_bar dp__tp_btn_in_r"},null,-1))],64))],64)):(P(),W(we,{key:0},[s.$slots["arrow-up"]?ue(s.$slots,"arrow-up",{key:0}):j("",!0),s.$slots["arrow-up"]?j("",!0):(P(),De(d(gn),{key:1}))],64))],42,Ui),ye("button",{ref_for:!0,ref:be=>T(be,ge,1),type:"button","aria-label":`${y.value($.type).text}-${(X=d(p))==null?void 0:X.openTpOverlay($.type)}`,class:ke({dp__time_display:!0,dp__time_display_block:!s.timePickerInline,dp__time_display_inline:s.timePickerInline,"dp--time-invalid":ae.value($.type),"dp--time-overlay-btn":!ae.value($.type),"dp--hidden-el":A.value}),disabled:M($.type),tabindex:"0","data-test":`${$.type}-toggle-overlay-btn-${r.order}`,onKeydown:be=>d(et)(be,()=>o($.type),!0),onClick:be=>o($.type)},[s.$slots[$.type]?ue(s.$slots,$.type,{key:0,text:y.value($.type).text,value:y.value($.type).value}):j("",!0),s.$slots[$.type]?j("",!0):(P(),W(we,{key:1},[Dt(Ge(y.value($.type).text),1)],64))],42,Xi),ye("button",{ref_for:!0,ref:be=>T(be,ge,2),type:"button",class:ke({dp__btn:!0,dp__inc_dec_button:!s.timePickerInline,dp__inc_dec_button_inline:s.timePickerInline,dp__tp_inline_btn_bottom:s.timePickerInline,dp__inc_dec_button_disabled:N.value($.type),"dp--hidden-el":A.value}),"data-test":`${$.type}-time-dec-btn-${r.order}`,"aria-label":(de=d(p))==null?void 0:de.decrementValue($.type),tabindex:"0",onKeydown:be=>d(et)(be,()=>u($.type,!1,{keyboard:!0}),!0),onClick:be=>d(m).timeArrowHoldThreshold?void 0:u($.type,!1),onMousedown:be=>d(m).timeArrowHoldThreshold?u($.type,!1):void 0,onMouseup:z},[r.timePickerInline?(P(),W(we,{key:1},[s.$slots["tp-inline-arrow-down"]?ue(s.$slots,"tp-inline-arrow-down",{key:0}):(P(),W(we,{key:1},[L[4]||(L[4]=ye("span",{class:"dp__tp_inline_btn_bar dp__tp_btn_in_l"},null,-1)),L[5]||(L[5]=ye("span",{class:"dp__tp_inline_btn_bar dp__tp_btn_in_r"},null,-1))],64))],64)):(P(),W(we,{key:0},[s.$slots["arrow-down"]?ue(s.$slots,"arrow-down",{key:0}):j("",!0),s.$slots["arrow-down"]?j("",!0):(P(),De(d(bn),{key:1}))],64))],42,Gi)],64))],2)}),128)),s.is24?j("",!0):(P(),W("div",ji,[s.$slots["am-pm-button"]?ue(s.$slots,"am-pm-button",{key:0,toggle:fe,value:f.value}):j("",!0),s.$slots["am-pm-button"]?j("",!0):(P(),W("button",{key:1,ref_key:"amPmButton",ref:S,type:"button",class:"dp__pm_am_button",role:"button","aria-label":(J=d(p))==null?void 0:J.amPmButton,tabindex:"0",onClick:fe,onKeydown:L[0]||(L[0]=$=>d(et)($,()=>fe(),!0))},Ge(f.value),41,Ki))])),(P(!0),W(we,null,Ye(D.value,($,ge)=>(P(),De(ta,{key:ge,name:d(h)(Y[$.type]),css:d(k)},{default:_e(()=>{var x,X;return[Y[$.type]?(P(),De(ya,{key:0,items:R($.type),"is-last":s.autoApply&&!d(m).keepActionRow,"esc-close":s.escClose,type:$.type,"text-input":s.textInput,config:s.config,"arrow-navigation":s.arrowNavigation,"aria-labels":s.ariaLabels,"overlay-label":(X=(x=d(p)).timeOverlay)==null?void 0:X.call(x,$.type),onSelected:de=>K($.type,de),onToggle:de=>o($.type),onResetFlow:L[1]||(L[1]=de=>s.$emit("reset-flow"))},je({"button-icon":_e(()=>[s.$slots["clock-icon"]?ue(s.$slots,"clock-icon",{key:0}):j("",!0),s.$slots["clock-icon"]?j("",!0):(P(),De(Oa(s.timePickerInline?d(aa):d(yn)),{key:1}))]),_:2},[s.$slots[`${$.type}-overlay-value`]?{name:"item",fn:_e(({item:de})=>[ue(s.$slots,`${$.type}-overlay-value`,{text:de.text,value:de.value})]),key:"0"}:void 0,s.$slots[`${$.type}-overlay-header`]?{name:"header",fn:_e(()=>[ue(s.$slots,`${$.type}-overlay-header`,{toggle:()=>o($.type)})]),key:"1"}:void 0]),1032,["items","is-last","esc-close","type","text-input","config","arrow-navigation","aria-labels","overlay-label","onSelected","onToggle"])):j("",!0)]}),_:2},1032,["name","css"]))),128))]))}}}),Zi={class:"dp--tp-wrap"},es=["aria-label","tabindex"],ts=["role","aria-label","tabindex"],as=["aria-label"],Sr=ze({compatConfig:{MODE:3},__name:"TimePicker",props:{hours:{type:[Number,Array],default:0},minutes:{type:[Number,Array],default:0},seconds:{type:[Number,Array],default:0},disabledTimesConfig:{type:Function,default:null},validateTime:{type:Function,default:()=>!1},...yt},emits:["update:hours","update:minutes","update:seconds","mount","reset-flow","overlay-opened","overlay-closed","am-pm-change"],setup(e,{expose:t,emit:n}){const a=n,r=e,{buildMatrix:l,setTimePicker:i}=It(),p=qt(),{defaultedTransitions:c,defaultedAriaLabels:C,defaultedTextInput:m,defaultedConfig:v,defaultedRange:h}=Se(r),{transitionName:k,showTransition:Y}=ga(c),{hideNavigationButtons:f}=Ia(),S=Z(null),I=Z(null),U=Z([]),A=Z(null),q=Z(!1);Ke(()=>{a("mount"),!r.timePicker&&r.arrowNavigation?l([Fe(S.value)],"time"):i(!0,r.timePicker)});const ae=G(()=>h.value.enabled&&r.modelAuto?yr(r.internalModelValue):!0),E=Z(!1),B=R=>({hours:Array.isArray(r.hours)?r.hours[R]:r.hours,minutes:Array.isArray(r.minutes)?r.minutes[R]:r.minutes,seconds:Array.isArray(r.seconds)?r.seconds[R]:r.seconds}),ne=G(()=>{const R=[];if(h.value.enabled)for(let b=0;b<2;b++)R.push(B(b));else R.push(B(0));return R}),F=(R,b=!1,oe="")=>{b||a("reset-flow"),E.value=R,a(R?"overlay-opened":"overlay-closed",Xe.time),r.arrowNavigation&&i(R),it(()=>{oe!==""&&U.value[0]&&U.value[0].openChildCmp(oe)})},N=G(()=>({dp__btn:!0,dp__button:!0,dp__button_bottom:r.autoApply&&!v.value.keepActionRow})),ie=lt(p,"timePicker"),ce=(R,b,oe)=>h.value.enabled?b===0?[R,ne.value[1][oe]]:[ne.value[0][oe],R]:R,pe=R=>{a("update:hours",R)},g=R=>{a("update:minutes",R)},D=R=>{a("update:seconds",R)},y=()=>{if(A.value&&!m.value.enabled&&!r.noOverlayFocus){const R=gr(A.value);R&&R.focus({preventScroll:!0})}},H=R=>{q.value=!1,a("overlay-closed",R)},re=R=>{q.value=!0,a("overlay-opened",R)};return t({toggleTimePicker:F}),(R,b)=>{var oe;return P(),W("div",Zi,[!R.timePicker&&!R.timePickerInline?Ma((P(),W("button",{key:0,ref_key:"openTimePickerBtn",ref:S,type:"button",class:ke({...N.value,"dp--hidden-el":E.value}),"aria-label":(oe=d(C))==null?void 0:oe.openTimePicker,tabindex:R.noOverlayFocus?void 0:0,"data-test":"open-time-picker-btn",onKeydown:b[0]||(b[0]=V=>d(et)(V,()=>F(!0))),onClick:b[1]||(b[1]=V=>F(!0))},[R.$slots["clock-icon"]?ue(R.$slots,"clock-icon",{key:0}):j("",!0),R.$slots["clock-icon"]?j("",!0):(P(),De(d(yn),{key:1}))],42,es)),[[Da,!d(f)(R.hideNavigation,"time")]]):j("",!0),ot(ta,{name:d(k)(E.value),css:d(Y)&&!R.timePickerInline},{default:_e(()=>{var V,M;return[E.value||R.timePicker||R.timePickerInline?(P(),W("div",{key:0,ref_key:"overlayRef",ref:A,role:R.timePickerInline?void 0:"dialog",class:ke({dp__overlay:!R.timePickerInline,"dp--overlay-absolute":!r.timePicker&&!R.timePickerInline,"dp--overlay-relative":r.timePicker}),style:dt(R.timePicker?{height:`${d(v).modeHeight}px`}:void 0),"aria-label":(V=d(C))==null?void 0:V.timePicker,tabindex:R.timePickerInline?void 0:0},[ye("div",{class:ke(R.timePickerInline?"dp__time_picker_inline_container":"dp__overlay_container dp__container_flex dp__time_picker_overlay_container"),style:{display:"flex"}},[R.$slots["time-picker-overlay"]?ue(R.$slots,"time-picker-overlay",{key:0,hours:e.hours,minutes:e.minutes,seconds:e.seconds,setHours:pe,setMinutes:g,setSeconds:D}):j("",!0),R.$slots["time-picker-overlay"]?j("",!0):(P(),W("div",{key:1,class:ke(R.timePickerInline?"dp__flex":"dp__overlay_row dp__flex_row")},[(P(!0),W(we,null,Ye(ne.value,(o,w)=>Ma((P(),De(Ji,Qe({key:w,ref_for:!0},{...R.$props,order:w,hours:o.hours,minutes:o.minutes,seconds:o.seconds,closeTimePickerBtn:I.value,disabledTimesConfig:e.disabledTimesConfig,disabled:w===0?d(h).fixedStart:d(h).fixedEnd},{ref_for:!0,ref_key:"timeInputRefs",ref:U,"validate-time":(z,u)=>e.validateTime(z,ce(u,w,z)),"onUpdate:hours":z=>pe(ce(z,w,"hours")),"onUpdate:minutes":z=>g(ce(z,w,"minutes")),"onUpdate:seconds":z=>D(ce(z,w,"seconds")),onMounted:y,onOverlayClosed:H,onOverlayOpened:re,onAmPmChange:b[2]||(b[2]=z=>R.$emit("am-pm-change",z))}),je({_:2},[Ye(d(ie),(z,u)=>({name:z,fn:_e(le=>[ue(R.$slots,z,Qe({ref_for:!0},le))])}))]),1040,["validate-time","onUpdate:hours","onUpdate:minutes","onUpdate:seconds"])),[[Da,w===0?!0:ae.value]])),128))],2)),!R.timePicker&&!R.timePickerInline?Ma((P(),W("button",{key:2,ref_key:"closeTimePickerBtn",ref:I,type:"button",class:ke({...N.value,"dp--hidden-el":q.value}),"aria-label":(M=d(C))==null?void 0:M.closeTimePicker,tabindex:"0",onKeydown:b[3]||(b[3]=o=>d(et)(o,()=>F(!1))),onClick:b[4]||(b[4]=o=>F(!1))},[R.$slots["calendar-icon"]?ue(R.$slots,"calendar-icon",{key:0}):j("",!0),R.$slots["calendar-icon"]?j("",!0):(P(),De(d(aa),{key:1}))],42,as)),[[Da,!d(f)(R.hideNavigation,"time")]]):j("",!0)],2)],14,ts)):j("",!0)]}),_:3},8,["name","css"])])}}}),Rr=(e,t,n,a)=>{const{defaultedRange:r}=Se(e),l=(A,q)=>Array.isArray(t[A])?t[A][q]:t[A],i=A=>e.enableSeconds?Array.isArray(t.seconds)?t.seconds[A]:t.seconds:0,p=(A,q)=>A?q!==void 0?St(A,l("hours",q),l("minutes",q),i(q)):St(A,t.hours,t.minutes,i()):mr(Q(),i(q)),c=(A,q)=>{t[A]=q},C=G(()=>e.modelAuto&&r.value.enabled?Array.isArray(n.value)?n.value.length>1:!1:r.value.enabled),m=(A,q)=>{const ae=Object.fromEntries(Object.keys(t).map(E=>E===A?[E,q]:[E,t[E]].slice()));if(C.value&&!r.value.disableTimeRangeValidation){const E=ne=>n.value?St(n.value[ne],ae.hours[ne],ae.minutes[ne],ae.seconds[ne]):null,B=ne=>vr(n.value[ne],0);return!(Me(E(0),E(1))&&(Kt(E(0),B(1))||pa(E(1),B(0))))}return!0},v=(A,q)=>{m(A,q)&&(c(A,q),a&&a())},h=A=>{v("hours",A)},k=A=>{v("minutes",A)},Y=A=>{v("seconds",A)},f=(A,q,ae,E)=>{q&&h(A),!q&&!ae&&k(A),ae&&Y(A),n.value&&E(n.value)},S=A=>{if(A){const q=Array.isArray(A),ae=q?[+A[0].hours,+A[1].hours]:+A.hours,E=q?[+A[0].minutes,+A[1].minutes]:+A.minutes,B=q?[+A[0].seconds,+A[1].seconds]:+A.seconds;c("hours",ae),c("minutes",E),e.enableSeconds&&c("seconds",B)}},I=(A,q)=>{const ae={hours:Array.isArray(t.hours)?t.hours[A]:t.hours,disabledArr:[]};return(q||q===0)&&(ae.hours=q),Array.isArray(e.disabledTimes)&&(ae.disabledArr=r.value.enabled&&Array.isArray(e.disabledTimes[A])?e.disabledTimes[A]:e.disabledTimes),ae},U=G(()=>(A,q)=>{var ae;if(Array.isArray(e.disabledTimes)){const{disabledArr:E,hours:B}=I(A,q),ne=E.filter(F=>+F.hours===B);return((ae=ne[0])==null?void 0:ae.minutes)==="*"?{hours:[B],minutes:void 0,seconds:void 0}:{hours:[],minutes:ne?.map(F=>+F.minutes)??[],seconds:ne?.map(F=>F.seconds?+F.seconds:void 0)??[]}}return{hours:[],minutes:[],seconds:[]}});return{setTime:c,updateHours:h,updateMinutes:k,updateSeconds:Y,getSetDateTime:p,updateTimeValues:f,getSecondsValue:i,assignStartTime:S,validateTime:m,disabledTimesConfig:U}},ns=(e,t)=>{const n=()=>{e.isTextInputDate&&q()},{modelValue:a,time:r}=ba(e,t,n),{defaultedStartTime:l,defaultedRange:i,defaultedTz:p}=Se(e),{updateTimeValues:c,getSetDateTime:C,setTime:m,assignStartTime:v,disabledTimesConfig:h,validateTime:k}=Rr(e,r,a,Y);function Y(){t("update-flow-step")}const f=E=>{const{hours:B,minutes:ne,seconds:F}=E;return{hours:+B,minutes:+ne,seconds:F?+F:0}},S=()=>{if(e.startTime){if(Array.isArray(e.startTime)){const B=f(e.startTime[0]),ne=f(e.startTime[1]);return[Ce(Q(),B),Ce(Q(),ne)]}const E=f(e.startTime);return Ce(Q(),E)}return i.value.enabled?[null,null]:null},I=()=>{if(i.value.enabled){const[E,B]=S();a.value=[nt(C(E,0),p.value.timezone),nt(C(B,1),p.value.timezone)]}else a.value=nt(C(S()),p.value.timezone)},U=E=>Array.isArray(E)?[Ft(Q(E[0])),Ft(Q(E[1]))]:[Ft(E??Q())],A=(E,B,ne)=>{m("hours",E),m("minutes",B),m("seconds",e.enableSeconds?ne:0)},q=()=>{const[E,B]=U(a.value);return i.value.enabled?A([E.hours,B.hours],[E.minutes,B.minutes],[E.seconds,B.seconds]):A(E.hours,E.minutes,E.seconds)};Ke(()=>{if(!e.shadow)return v(l.value),a.value?q():I()});const ae=()=>{Array.isArray(a.value)?a.value=a.value.map((E,B)=>E&&C(E,B)):a.value=C(a.value),t("time-update")};return{modelValue:a,time:r,disabledTimesConfig:h,updateTime:(E,B=!0,ne=!1)=>{c(E,B,ne,ae)},validateTime:k}},rs=ze({compatConfig:{MODE:3},__name:"TimePickerSolo",props:{...yt},emits:["update:internal-model-value","time-update","am-pm-change","mount","reset-flow","update-flow-step","overlay-toggle"],setup(e,{expose:t,emit:n}){const a=n,r=e,l=qt(),i=lt(l,"timePicker"),p=Z(null),{time:c,modelValue:C,disabledTimesConfig:m,updateTime:v,validateTime:h}=ns(r,a);return Ke(()=>{r.shadow||a("mount",null)}),t({getSidebarProps:()=>({modelValue:C,time:c,updateTime:v}),toggleTimePicker:(k,Y=!1,f="")=>{var S;(S=p.value)==null||S.toggleTimePicker(k,Y,f)}}),(k,Y)=>(P(),De(Sa,{"multi-calendars":0,stretch:""},{default:_e(()=>[ot(Sr,Qe({ref_key:"tpRef",ref:p},k.$props,{hours:d(c).hours,minutes:d(c).minutes,seconds:d(c).seconds,"internal-model-value":k.internalModelValue,"disabled-times-config":d(m),"validate-time":d(h),"onUpdate:hours":Y[0]||(Y[0]=f=>d(v)(f)),"onUpdate:minutes":Y[1]||(Y[1]=f=>d(v)(f,!1)),"onUpdate:seconds":Y[2]||(Y[2]=f=>d(v)(f,!1,!0)),onAmPmChange:Y[3]||(Y[3]=f=>k.$emit("am-pm-change",f)),onResetFlow:Y[4]||(Y[4]=f=>k.$emit("reset-flow")),onOverlayClosed:Y[5]||(Y[5]=f=>k.$emit("overlay-toggle",{open:!1,overlay:f})),onOverlayOpened:Y[6]||(Y[6]=f=>k.$emit("overlay-toggle",{open:!0,overlay:f}))}),je({_:2},[Ye(d(i),(f,S)=>({name:f,fn:_e(I=>[ue(k.$slots,f,We(at(I)))])}))]),1040,["hours","minutes","seconds","internal-model-value","disabled-times-config","validate-time"])]),_:3}))}}),ls={class:"dp--header-wrap"},os={key:0,class:"dp__month_year_wrap"},is={key:0},ss={class:"dp__month_year_wrap"},us=["data-dp-element","aria-label","data-test","onClick","onKeydown"],ds=ze({compatConfig:{MODE:3},__name:"DpHeader",props:{month:{type:Number,default:0},year:{type:Number,default:0},instance:{type:Number,default:0},years:{type:Array,default:()=>[]},months:{type:Array,default:()=>[]},...yt},emits:["update-month-year","mount","reset-flow","overlay-closed","overlay-opened"],setup(e,{expose:t,emit:n}){const a=n,r=e,{defaultedTransitions:l,defaultedAriaLabels:i,defaultedMultiCalendars:p,defaultedFilters:c,defaultedConfig:C,defaultedHighlight:m,propDates:v,defaultedUI:h}=Se(r),{transitionName:k,showTransition:Y}=ga(l),{buildMatrix:f}=It(),{handleMonthYearChange:S,isDisabled:I,updateMonthYear:U}=Yi(r,a),{showLeftIcon:A,showRightIcon:q}=Ia(),ae=Z(!1),E=Z(!1),B=Z(!1),ne=Z([null,null,null,null]);Ke(()=>{a("mount")});const F=M=>({get:()=>r[M],set:o=>{const w=M===vt.month?vt.year:vt.month;a("update-month-year",{[M]:o,[w]:r[w]}),M===vt.month?H(!0):re(!0)}}),N=G(F(vt.month)),ie=G(F(vt.year)),ce=G(()=>M=>({month:r.month,year:r.year,items:M===vt.month?r.months:r.years,instance:r.instance,updateMonthYear:U,toggle:M===vt.month?H:re})),pe=G(()=>r.months.find(o=>o.value===r.month)||{text:"",value:0}),g=G(()=>Zt(r.months,M=>{const o=r.month===M.value,w=fa(M.value,wr(r.year,v.value.minDate),_r(r.year,v.value.maxDate))||c.value.months.includes(M.value),z=Tr(m.value,M.value,r.year);return{active:o,disabled:w,highlighted:z}})),D=G(()=>Zt(r.years,M=>{const o=r.year===M.value,w=fa(M.value,ea(v.value.minDate),ea(v.value.maxDate))||c.value.years.includes(M.value),z=Mn(m.value,M.value);return{active:o,disabled:w,highlighted:z}})),y=(M,o,w)=>{w!==void 0?M.value=w:M.value=!M.value,M.value?(B.value=!0,a("overlay-opened",o)):(B.value=!1,a("overlay-closed",o))},H=(M=!1,o)=>{R(M),y(ae,Xe.month,o)},re=(M=!1,o)=>{R(M),y(E,Xe.year,o)},R=M=>{M||a("reset-flow")},b=(M,o)=>{r.arrowNavigation&&(ne.value[o]=Fe(M),f(ne.value,"monthYear"))},oe=G(()=>{var M,o,w,z,u,le;return[{type:vt.month,index:1,toggle:H,modelValue:N.value,updateModelValue:fe=>N.value=fe,text:pe.value.text,showSelectionGrid:ae.value,items:g.value,ariaLabel:(M=i.value)==null?void 0:M.openMonthsOverlay,overlayLabel:((w=(o=i.value).monthPicker)==null?void 0:w.call(o,!0))??void 0},{type:vt.year,index:2,toggle:re,modelValue:ie.value,updateModelValue:fe=>ie.value=fe,text:br(r.year,r.locale),showSelectionGrid:E.value,items:D.value,ariaLabel:(z=i.value)==null?void 0:z.openYearsOverlay,overlayLabel:((le=(u=i.value).yearPicker)==null?void 0:le.call(u,!0))??void 0}]}),V=G(()=>r.disableYearSelect?[oe.value[0]]:r.yearFirst?[...oe.value].reverse():oe.value);return t({toggleMonthPicker:H,toggleYearPicker:re,handleMonthYearChange:S}),(M,o)=>{var w,z,u,le,fe,Ve;return P(),W("div",ls,[M.$slots["month-year"]?(P(),W("div",os,[ue(M.$slots,"month-year",We(at({month:e.month,year:e.year,months:e.months,years:e.years,updateMonthYear:d(U),handleMonthYearChange:d(S),instance:e.instance})))])):(P(),W(we,{key:1},[M.$slots["top-extra"]?(P(),W("div",is,[ue(M.$slots,"top-extra",{value:M.internalModelValue})])):j("",!0),ye("div",ss,[d(A)(d(p),e.instance)&&!M.vertical?(P(),De(da,{key:0,"aria-label":(w=d(i))==null?void 0:w.prevMonth,disabled:d(I)(!1),class:ke((z=d(h))==null?void 0:z.navBtnPrev),"el-name":"action-prev",onActivate:o[0]||(o[0]=T=>d(S)(!1,!0)),onSetRef:o[1]||(o[1]=T=>b(T,0))},{default:_e(()=>[M.$slots["arrow-left"]?ue(M.$slots,"arrow-left",{key:0}):j("",!0),M.$slots["arrow-left"]?j("",!0):(P(),De(d(fn),{key:1}))]),_:3},8,["aria-label","disabled","class"])):j("",!0),ye("div",{class:ke(["dp__month_year_wrap",{dp__year_disable_select:M.disableYearSelect}])},[(P(!0),W(we,null,Ye(V.value,(T,K)=>(P(),W(we,{key:T.type},[ye("button",{ref_for:!0,ref:s=>b(s,K+1),type:"button","data-dp-element":`overlay-${T.type}`,class:ke(["dp__btn dp__month_year_select",{"dp--hidden-el":B.value}]),"aria-label":`${T.text}-${T.ariaLabel}`,"data-test":`${T.type}-toggle-overlay-${e.instance}`,onClick:T.toggle,onKeydown:s=>d(et)(s,()=>T.toggle(),!0)},[M.$slots[T.type]?ue(M.$slots,T.type,{key:0,text:T.text,value:r[T.type]}):j("",!0),M.$slots[T.type]?j("",!0):(P(),W(we,{key:1},[Dt(Ge(T.text),1)],64))],42,us),ot(ta,{name:d(k)(T.showSelectionGrid),css:d(Y)},{default:_e(()=>[T.showSelectionGrid?(P(),De(ya,{key:0,items:T.items,"arrow-navigation":M.arrowNavigation,"hide-navigation":M.hideNavigation,"is-last":M.autoApply&&!d(C).keepActionRow,"skip-button-ref":!1,config:M.config,type:T.type,"header-refs":[],"esc-close":M.escClose,"menu-wrap-ref":M.menuWrapRef,"text-input":M.textInput,"aria-labels":M.ariaLabels,"overlay-label":T.overlayLabel,onSelected:T.updateModelValue,onToggle:T.toggle},je({"button-icon":_e(()=>[M.$slots["calendar-icon"]?ue(M.$slots,"calendar-icon",{key:0}):j("",!0),M.$slots["calendar-icon"]?j("",!0):(P(),De(d(aa),{key:1}))]),_:2},[M.$slots[`${T.type}-overlay-value`]?{name:"item",fn:_e(({item:s})=>[ue(M.$slots,`${T.type}-overlay-value`,{text:s.text,value:s.value})]),key:"0"}:void 0,M.$slots[`${T.type}-overlay`]?{name:"overlay",fn:_e(()=>[ue(M.$slots,`${T.type}-overlay`,Qe({ref_for:!0},ce.value(T.type)))]),key:"1"}:void 0,M.$slots[`${T.type}-overlay-header`]?{name:"header",fn:_e(()=>[ue(M.$slots,`${T.type}-overlay-header`,{toggle:T.toggle})]),key:"2"}:void 0]),1032,["items","arrow-navigation","hide-navigation","is-last","config","type","esc-close","menu-wrap-ref","text-input","aria-labels","overlay-label","onSelected","onToggle"])):j("",!0)]),_:2},1032,["name","css"])],64))),128))],2),d(A)(d(p),e.instance)&&M.vertical?(P(),De(da,{key:1,"aria-label":(u=d(i))==null?void 0:u.prevMonth,"el-name":"action-prev",disabled:d(I)(!1),class:ke((le=d(h))==null?void 0:le.navBtnPrev),onActivate:o[2]||(o[2]=T=>d(S)(!1,!0))},{default:_e(()=>[M.$slots["arrow-up"]?ue(M.$slots,"arrow-up",{key:0}):j("",!0),M.$slots["arrow-up"]?j("",!0):(P(),De(d(gn),{key:1}))]),_:3},8,["aria-label","disabled","class"])):j("",!0),d(q)(d(p),e.instance)?(P(),De(da,{key:2,ref:"rightIcon","el-name":"action-next",disabled:d(I)(!0),"aria-label":(fe=d(i))==null?void 0:fe.nextMonth,class:ke((Ve=d(h))==null?void 0:Ve.navBtnNext),onActivate:o[3]||(o[3]=T=>d(S)(!0,!0)),onSetRef:o[4]||(o[4]=T=>b(T,M.disableYearSelect?2:3))},{default:_e(()=>[M.$slots[M.vertical?"arrow-down":"arrow-right"]?ue(M.$slots,M.vertical?"arrow-down":"arrow-right",{key:0}):j("",!0),M.$slots[M.vertical?"arrow-down":"arrow-right"]?j("",!0):(P(),De(Oa(M.vertical?d(bn):d(hn)),{key:1}))]),_:3},8,["disabled","aria-label","class"])):j("",!0)])],64))])}}}),cs={class:"dp__calendar_header",role:"row"},vs={key:0,class:"dp__calendar_header_item",role:"gridcell"},ms=["aria-label"],ps={key:0,class:"dp__calendar_item dp__week_num",role:"gridcell"},fs={class:"dp__cell_inner"},hs=["id","aria-pressed","aria-disabled","aria-label","tabindex","data-test","onClick","onTouchend","onKeydown","onMouseenter","onMouseleave","onMousedown"],ys=ze({compatConfig:{MODE:3},__name:"DpCalendar",props:{mappedDates:{type:Array,default:()=>[]},instance:{type:Number,default:0},month:{type:Number,default:0},year:{type:Number,default:0},...yt},emits:["select-date","set-hover-date","handle-scroll","mount","handle-swipe","handle-space","tooltip-open","tooltip-close"],setup(e,{expose:t,emit:n}){const a=n,r=e,{buildMultiLevelMatrix:l}=It(),{defaultedTransitions:i,defaultedConfig:p,defaultedAriaLabels:c,defaultedMultiCalendars:C,defaultedWeekNumbers:m,defaultedMultiDates:v,defaultedUI:h}=Se(r),k=Z(null),Y=Z({bottom:"",left:"",transform:""}),f=Z([]),S=Z(null),I=Z(!0),U=Z(""),A=Z({startX:0,endX:0,startY:0,endY:0}),q=Z([]),ae=Z({left:"50%"}),E=Z(!1),B=G(()=>r.calendar?r.calendar(r.mappedDates):r.mappedDates),ne=G(()=>r.dayNames?Array.isArray(r.dayNames)?r.dayNames:r.dayNames(r.locale,+r.weekStart):ei(r.formatLocale,r.locale,+r.weekStart));Ke(()=>{a("mount",{cmp:"calendar",refs:f}),p.value.noSwipe||S.value&&(S.value.addEventListener("touchstart",b,{passive:!1}),S.value.addEventListener("touchend",oe,{passive:!1}),S.value.addEventListener("touchmove",V,{passive:!1})),r.monthChangeOnScroll&&S.value&&S.value.addEventListener("wheel",w,{passive:!1})});const F=T=>T?r.vertical?"vNext":"next":r.vertical?"vPrevious":"previous",N=(T,K)=>{if(r.transitions){const s=tt(Mt(Q(),r.month,r.year));U.value=Ne(tt(Mt(Q(),T,K)),s)?i.value[F(!0)]:i.value[F(!1)],I.value=!1,it(()=>{I.value=!0})}},ie=G(()=>({...h.value.calendar??{}})),ce=G(()=>T=>{const K=ai(T);return{dp__marker_dot:K.type==="dot",dp__marker_line:K.type==="line"}}),pe=G(()=>T=>Me(T,k.value)),g=G(()=>({dp__calendar:!0,dp__calendar_next:C.value.count>0&&r.instance!==0})),D=G(()=>T=>r.hideOffsetDates?T.current:!0),y=async(T,K)=>{const{width:s,height:L}=T.getBoundingClientRect();k.value=K.value;let J={left:`${s/2}px`},$=-50;if(await it(),q.value[0]){const{left:ge,width:x}=q.value[0].getBoundingClientRect();ge<0&&(J={left:"0"},$=0,ae.value.left=`${s/2}px`),window.innerWidth{var L,J,$;const ge=Fe(f.value[K][s]);ge&&((L=T.marker)!=null&&L.customPosition&&($=(J=T.marker)==null?void 0:J.tooltip)!=null&&$.length?Y.value=T.marker.customPosition(ge):await y(ge,T),a("tooltip-open",T.marker))},re=async(T,K,s)=>{var L,J;if(E.value&&v.value.enabled&&v.value.dragSelect)return a("select-date",T);a("set-hover-date",T),(J=(L=T.marker)==null?void 0:L.tooltip)!=null&&J.length&&await H(T,K,s)},R=T=>{k.value&&(k.value=null,Y.value=JSON.parse(JSON.stringify({bottom:"",left:"",transform:""})),a("tooltip-close",T.marker))},b=T=>{A.value.startX=T.changedTouches[0].screenX,A.value.startY=T.changedTouches[0].screenY},oe=T=>{A.value.endX=T.changedTouches[0].screenX,A.value.endY=T.changedTouches[0].screenY,M()},V=T=>{r.vertical&&!r.inline&&T.preventDefault()},M=()=>{const T=r.vertical?"Y":"X";Math.abs(A.value[`start${T}`]-A.value[`end${T}`])>10&&a("handle-swipe",A.value[`start${T}`]>A.value[`end${T}`]?"right":"left")},o=(T,K,s)=>{T&&(Array.isArray(f.value[K])?f.value[K][s]=T:f.value[K]=[T]),r.arrowNavigation&&l(f.value,"calendar")},w=T=>{r.monthChangeOnScroll&&(T.preventDefault(),a("handle-scroll",T))},z=T=>m.value.type==="local"?vn(T.value,{weekStartsOn:+r.weekStart}):m.value.type==="iso"?dn(T.value):typeof m.value.type=="function"?m.value.type(T.value):"",u=T=>{const K=T[0];return m.value.hideOnOffsetDates?T.some(s=>s.current)?z(K):"":z(K)},le=(T,K,s=!0)=>{s&&Vn()||!s&&!Vn()||v.value.enabled||(Yt(T,p.value),a("select-date",K))},fe=T=>{Yt(T,p.value)},Ve=T=>{v.value.enabled&&v.value.dragSelect?(E.value=!0,a("select-date",T)):v.value.enabled&&a("select-date",T)};return t({triggerTransition:N}),(T,K)=>(P(),W("div",{class:ke(g.value)},[ye("div",{ref_key:"calendarWrapRef",ref:S,class:ke(ie.value),role:"grid"},[ye("div",cs,[T.weekNumbers?(P(),W("div",vs,Ge(T.weekNumName),1)):j("",!0),(P(!0),W(we,null,Ye(ne.value,(s,L)=>{var J,$;return P(),W("div",{key:L,class:"dp__calendar_header_item",role:"gridcell","data-test":"calendar-header","aria-label":($=(J=d(c))==null?void 0:J.weekDay)==null?void 0:$.call(J,L)},[T.$slots["calendar-header"]?ue(T.$slots,"calendar-header",{key:0,day:s,index:L}):j("",!0),T.$slots["calendar-header"]?j("",!0):(P(),W(we,{key:1},[Dt(Ge(s),1)],64))],8,ms)}),128))]),K[2]||(K[2]=ye("div",{class:"dp__calendar_header_separator"},null,-1)),ot(ta,{name:U.value,css:!!T.transitions},{default:_e(()=>[I.value?(P(),W("div",{key:0,class:"dp__calendar",role:"rowgroup",onMouseleave:K[1]||(K[1]=s=>E.value=!1)},[(P(!0),W(we,null,Ye(B.value,(s,L)=>(P(),W("div",{key:L,class:"dp__calendar_row",role:"row"},[T.weekNumbers?(P(),W("div",ps,[ye("div",fs,Ge(u(s.days)),1)])):j("",!0),(P(!0),W(we,null,Ye(s.days,(J,$)=>{var ge,x,X;return P(),W("div",{id:d(Pr)(J.value),ref_for:!0,ref:de=>o(de,L,$),key:$+L,role:"gridcell",class:"dp__calendar_item","aria-pressed":(J.classData.dp__active_date||J.classData.dp__range_start||J.classData.dp__range_start)??void 0,"aria-disabled":J.classData.dp__cell_disabled||void 0,"aria-label":(x=(ge=d(c))==null?void 0:ge.day)==null?void 0:x.call(ge,J),tabindex:!J.current&&T.hideOffsetDates?void 0:0,"data-test":J.value,onClick:va(de=>le(de,J),["prevent"]),onTouchend:de=>le(de,J,!1),onKeydown:de=>d(et)(de,()=>T.$emit("select-date",J)),onMouseenter:de=>re(J,L,$),onMouseleave:de=>R(J),onMousedown:de=>Ve(J),onMouseup:K[0]||(K[0]=de=>E.value=!1)},[ye("div",{class:ke(["dp__cell_inner",J.classData])},[T.$slots.day&&D.value(J)?ue(T.$slots,"day",{key:0,day:+J.text,date:J.value}):j("",!0),T.$slots.day?j("",!0):(P(),W(we,{key:1},[Dt(Ge(J.text),1)],64)),J.marker&&D.value(J)?(P(),W(we,{key:2},[T.$slots.marker?ue(T.$slots,"marker",{key:0,marker:J.marker,day:+J.text,date:J.value}):(P(),W("div",{key:1,class:ke(ce.value(J.marker)),style:dt(J.marker.color?{backgroundColor:J.marker.color}:{})},null,6))],64)):j("",!0),pe.value(J.value)?(P(),W("div",{key:3,ref_for:!0,ref_key:"activeTooltip",ref:q,class:"dp__marker_tooltip",style:dt(Y.value)},[(X=J.marker)!=null&&X.tooltip?(P(),W("div",{key:0,class:"dp__tooltip_content",onClick:fe},[(P(!0),W(we,null,Ye(J.marker.tooltip,(de,be)=>(P(),W("div",{key:be,class:"dp__tooltip_text"},[T.$slots["marker-tooltip"]?ue(T.$slots,"marker-tooltip",{key:0,tooltip:de,day:J.value}):j("",!0),T.$slots["marker-tooltip"]?j("",!0):(P(),W(we,{key:1},[ye("div",{class:"dp__tooltip_mark",style:dt(de.color?{backgroundColor:de.color}:{})},null,4),ye("div",null,Ge(de.text),1)],64))]))),128)),ye("div",{class:"dp__arrow_bottom_tp",style:dt(ae.value)},null,4)])):j("",!0)],4)):j("",!0)],2)],40,hs)}),128))]))),128))],32)):j("",!0)]),_:3},8,["name","css"])],2)],2))}}),zn=e=>Array.isArray(e),gs=(e,t,n,a)=>{const r=Z([]),l=Z(new Date),i=Z(),p=()=>b(e.isTextInputDate),{modelValue:c,calendars:C,time:m,today:v}=ba(e,t,p),{defaultedMultiCalendars:h,defaultedStartTime:k,defaultedRange:Y,defaultedConfig:f,defaultedTz:S,propDates:I,defaultedMultiDates:U}=Se(e),{validateMonthYearInRange:A,isDisabled:q,isDateRangeAllowed:ae,checkMinMaxRange:E}=Et(e),{updateTimeValues:B,getSetDateTime:ne,setTime:F,assignStartTime:N,validateTime:ie,disabledTimesConfig:ce}=Rr(e,m,c,a),pe=G(()=>_=>C.value[_]?C.value[_].month:0),g=G(()=>_=>C.value[_]?C.value[_].year:0),D=_=>!f.value.keepViewOnOffsetClick||_?!0:!i.value,y=(_,te,O,ee=!1)=>{var se,Je;D(ee)&&(C.value[_]||(C.value[_]={month:0,year:0}),C.value[_].month=Hn(te)?(se=C.value[_])==null?void 0:se.month:te,C.value[_].year=Hn(O)?(Je=C.value[_])==null?void 0:Je.year:O)},H=()=>{e.autoApply&&t("select-date")};Ke(()=>{e.shadow||(c.value||(T(),k.value&&N(k.value)),b(!0),e.focusStartDate&&e.startDate&&T())});const re=G(()=>{var _;return(_=e.flow)!=null&&_.length&&!e.partialFlow?e.flowStep===e.flow.length:!0}),R=()=>{e.autoApply&&re.value&&t("auto-apply",e.partialFlow?e.flowStep!==e.flow.length:!1)},b=(_=!1)=>{if(c.value)return Array.isArray(c.value)?(r.value=c.value,u(_)):M(c.value,_);if(h.value.count&&_&&!e.startDate)return V(Q(),_)},oe=()=>Array.isArray(c.value)&&Y.value.enabled?xe(c.value[0])===xe(c.value[1]??c.value[0]):!1,V=(_=new Date,te=!1)=>{if((!h.value.count||!h.value.static||te)&&y(0,xe(_),he(_)),h.value.count&&(!h.value.solo||!c.value||oe()))for(let O=1;O{V(_),F("hours",Tt(_)),F("minutes",Rt(_)),F("seconds",jt(_)),h.value.count&&te&&Ve()},o=_=>{if(h.value.count){if(h.value.solo)return 0;const te=xe(_[0]),O=xe(_[1]);return Math.abs(O-te){_[1]&&Y.value.showLastInRange?V(_[o(_)],te):V(_[0],te);const O=(ee,se)=>[ee(_[0]),_[1]?ee(_[1]):m[se][1]];F("hours",O(Tt,"hours")),F("minutes",O(Rt,"minutes")),F("seconds",O(jt,"seconds"))},z=(_,te)=>{if((Y.value.enabled||e.weekPicker)&&!U.value.enabled)return w(_,te);if(U.value.enabled&&te){const O=_[_.length-1];return M(O,te)}},u=_=>{const te=c.value;z(te,_),h.value.count&&h.value.solo&&Ve()},le=(_,te)=>{const O=Ce(Q(),{month:pe.value(te),year:g.value(te)}),ee=_<0?ft(O,1):Jt(O,1);A(xe(ee),he(ee),_<0,e.preventMinMaxNavigation)&&(y(te,xe(ee),he(ee)),t("update-month-year",{instance:te,month:xe(ee),year:he(ee)}),h.value.count&&!h.value.solo&&fe(te),n())},fe=_=>{for(let te=_-1;te>=0;te--){const O=Jt(Ce(Q(),{month:pe.value(te+1),year:g.value(te+1)}),1);y(te,xe(O),he(O))}for(let te=_+1;te<=h.value.count-1;te++){const O=ft(Ce(Q(),{month:pe.value(te-1),year:g.value(te-1)}),1);y(te,xe(O),he(O))}},Ve=()=>{if(Array.isArray(c.value)&&c.value.length===2){const _=Q(Q(c.value[1]?c.value[1]:ft(c.value[0],1))),[te,O]=[xe(c.value[0]),he(c.value[0])],[ee,se]=[xe(c.value[1]),he(c.value[1])];(te!==ee||te===ee&&O!==se)&&h.value.solo&&y(1,xe(_),he(_))}else c.value&&!Array.isArray(c.value)&&(y(0,xe(c.value),he(c.value)),V(Q()))},T=()=>{e.startDate&&(y(0,xe(Q(e.startDate)),he(Q(e.startDate))),h.value.count&&fe(0))},K=(_,te)=>{if(e.monthChangeOnScroll){const O=new Date().getTime()-l.value.getTime(),ee=Math.abs(_.deltaY);let se=500;ee>1&&(se=100),ee>100&&(se=0),O>se&&(l.value=new Date,le(e.monthChangeOnScroll!=="inverse"?-_.deltaY:_.deltaY,te))}},s=(_,te,O=!1)=>{e.monthChangeOnArrows&&e.vertical===O&&L(_,te)},L=(_,te)=>{le(_==="right"?-1:1,te)},J=_=>{if(I.value.markers)return Aa(_.value,I.value.markers)},$=(_,te)=>{switch(e.sixWeeks===!0?"append":e.sixWeeks){case"prepend":return[!0,!1];case"center":return[_==0,!0];case"fair":return[_==0||te>_,!0];case"append":return[!1,!1];default:return[!1,!1]}},ge=(_,te,O,ee)=>{if(e.sixWeeks&&_.length<6){const se=6-_.length,Je=(te.getDay()+7-ee)%7,ut=6-(O.getDay()+7-ee)%7,[Bt,_a]=$(Je,ut);for(let la=1;la<=se;la++)if(_a?!!(la%2)==Bt:Bt){const At=_[0].days[0],qa=x(mt(At.value,-7),xe(te));_.unshift({days:qa})}else{const At=_[_.length-1],qa=At.days[At.days.length-1],Er=x(mt(qa.value,1),xe(te));_.push({days:Er})}}return _},x=(_,te)=>{const O=Q(_),ee=[];for(let se=0;se<7;se++){const Je=mt(O,se),ut=xe(Je)!==te;ee.push({text:e.hideOffsetDates&&ut?"":Je.getDate(),value:Je,current:!ut,classData:{}})}return ee},X=(_,te)=>{const O=[],ee=new Date(te,_),se=new Date(te,_+1,0),Je=e.weekStart,ut=ht(ee,{weekStartsOn:Je}),Bt=_a=>{const la=x(_a,_);if(O.push({days:la}),!O[O.length-1].days.some(At=>Me(tt(At.value),tt(se)))){const At=mt(_a,7);Bt(At)}};return Bt(ut),ge(O,ee,se,Je)},de=_=>{const te=St(Q(_.value),m.hours,m.minutes,rt());t("date-update",te),U.value.enabled?Dn(te,c,U.value.limit):c.value=te,a(),it().then(()=>{R()})},be=_=>Y.value.noDisabledRange?kr(r.value[0],_).some(te=>q(te)):!1,st=()=>{r.value=c.value?c.value.slice():[],r.value.length===2&&!(Y.value.fixedStart||Y.value.fixedEnd)&&(r.value=[])},me=(_,te)=>{const O=[Q(_.value),mt(Q(_.value),+Y.value.autoRange)];ae(O)?(te&&Pt(_.value),r.value=O):t("invalid-date",_.value)},Pt=_=>{const te=xe(Q(_)),O=he(Q(_));if(y(0,te,O),h.value.count>0)for(let ee=1;ee{if(be(_.value)||!E(_.value,c.value,Y.value.fixedStart?0:1))return t("invalid-date",_.value);r.value=$r(Q(_.value),c,t,Y)},na=(_,te)=>{if(st(),Y.value.autoRange)return me(_,te);if(Y.value.fixedStart||Y.value.fixedEnd)return gt(_);r.value[0]?E(Q(_.value),c.value)&&!be(_.value)?Ie(Q(_.value),Q(r.value[0]))?(r.value.unshift(Q(_.value)),t("range-end",r.value[0])):(r.value[1]=Q(_.value),t("range-end",r.value[1])):(e.autoApply&&t("auto-apply-invalid",_.value),t("invalid-date",_.value)):(r.value[0]=Q(_.value),t("range-start",r.value[0]))},rt=(_=!0)=>e.enableSeconds?Array.isArray(m.seconds)?_?m.seconds[0]:m.seconds[1]:m.seconds:0,ra=_=>{r.value[_]=St(r.value[_],m.hours[_],m.minutes[_],rt(_!==1))},Ea=()=>{var _,te;r.value[0]&&r.value[1]&&+((_=r.value)==null?void 0:_[0])>+((te=r.value)==null?void 0:te[1])&&(r.value.reverse(),t("range-start",r.value[0]),t("range-end",r.value[1]))},wa=()=>{r.value.length&&(r.value[0]&&!r.value[1]?ra(0):(ra(0),ra(1),a()),Ea(),c.value=r.value.slice(),Ra(r.value,t,e.autoApply,e.modelAuto))},Ba=(_,te=!1)=>{if(q(_.value)||!_.current&&e.hideOffsetDates)return t("invalid-date",_.value);if(i.value=JSON.parse(JSON.stringify(_)),!Y.value.enabled)return de(_);zn(m.hours)&&zn(m.minutes)&&!U.value.enabled&&(na(_,te),wa())},Na=(_,te)=>{var O;y(_,te.month,te.year,!0),h.value.count&&!h.value.solo&&fe(_),t("update-month-year",{instance:_,month:te.month,year:te.year}),n(h.value.solo?_:void 0);const ee=(O=e.flow)!=null&&O.length?e.flow[e.flowStep]:void 0;!te.fromNav&&(ee===Xe.month||ee===Xe.year)&&a()},La=(_,te)=>{Or({value:_,modelValue:c,range:Y.value.enabled,timezone:te?void 0:S.value.timezone}),H(),e.multiCalendars&&it().then(()=>b(!0))},Ha=()=>{const _=wn(Q(),S.value);Y.value.enabled?c.value&&Array.isArray(c.value)&&c.value[0]?c.value=Ie(_,c.value[0])?[_,c.value[0]]:[c.value[0],_]:c.value=[_]:c.value=_,H()},Va=()=>{if(Array.isArray(c.value))if(U.value.enabled){const _=Fa();c.value[c.value.length-1]=ne(_)}else c.value=c.value.map((_,te)=>_&&ne(_,te));else c.value=ne(c.value);t("time-update")},Fa=()=>Array.isArray(c.value)&&c.value.length?c.value[c.value.length-1]:null;return{calendars:C,modelValue:c,month:pe,year:g,time:m,disabledTimesConfig:ce,today:v,validateTime:ie,getCalendarDays:X,getMarker:J,handleScroll:K,handleSwipe:L,handleArrow:s,selectDate:Ba,updateMonthYear:Na,presetDate:La,selectCurrentDate:Ha,updateTime:(_,te=!0,O=!1)=>{B(_,te,O,Va)},assignMonthAndYear:V}},bs={key:0},ws=ze({__name:"DatePicker",props:{...yt},emits:["tooltip-open","tooltip-close","mount","update:internal-model-value","update-flow-step","reset-flow","auto-apply","focus-menu","select-date","range-start","range-end","invalid-fixed-range","time-update","am-pm-change","time-picker-open","time-picker-close","recalculate-position","update-month-year","auto-apply-invalid","date-update","invalid-date","overlay-toggle"],setup(e,{expose:t,emit:n}){const a=n,r=e,{calendars:l,month:i,year:p,modelValue:c,time:C,disabledTimesConfig:m,today:v,validateTime:h,getCalendarDays:k,getMarker:Y,handleArrow:f,handleScroll:S,handleSwipe:I,selectDate:U,updateMonthYear:A,presetDate:q,selectCurrentDate:ae,updateTime:E,assignMonthAndYear:B}=gs(r,a,oe,V),ne=qt(),{setHoverDate:F,getDayClassData:N,clearHoverDate:ie}=Is(c,r),{defaultedMultiCalendars:ce}=Se(r),pe=Z([]),g=Z([]),D=Z(null),y=lt(ne,"calendar"),H=lt(ne,"monthYear"),re=lt(ne,"timePicker"),R=K=>{r.shadow||a("mount",K)};ct(l,()=>{r.shadow||setTimeout(()=>{a("recalculate-position")},0)},{deep:!0}),ct(ce,(K,s)=>{K.count-s.count>0&&B()},{deep:!0});const b=G(()=>K=>k(i.value(K),p.value(K)).map(s=>({...s,days:s.days.map(L=>(L.marker=Y(L),L.classData=N(L),L))})));function oe(K){var s;K||K===0?(s=g.value[K])==null||s.triggerTransition(i.value(K),p.value(K)):g.value.forEach((L,J)=>L.triggerTransition(i.value(J),p.value(J)))}function V(){a("update-flow-step")}const M=(K,s=!1)=>{U(K,s),r.spaceConfirm&&a("select-date")},o=(K,s,L=0)=>{var J;(J=pe.value[L])==null||J.toggleMonthPicker(K,s)},w=(K,s,L=0)=>{var J;(J=pe.value[L])==null||J.toggleYearPicker(K,s)},z=(K,s,L)=>{var J;(J=D.value)==null||J.toggleTimePicker(K,s,L)},u=(K,s)=>{var L;if(!r.range){const J=c.value?c.value:v,$=s?new Date(s):J,ge=K?ht($,{weekStartsOn:1}):ar($,{weekStartsOn:1});U({value:ge,current:xe($)===i.value(0),text:"",classData:{}}),(L=document.getElementById(Pr(ge)))==null||L.focus()}},le=K=>{var s;(s=pe.value[0])==null||s.handleMonthYearChange(K,!0)},fe=K=>{A(0,{month:i.value(0),year:p.value(0)+(K?1:-1),fromNav:!0})},Ve=(K,s)=>{K===Xe.time&&a(`time-picker-${s?"open":"close"}`),a("overlay-toggle",{open:s,overlay:K})},T=K=>{a("overlay-toggle",{open:!1,overlay:K}),a("focus-menu")};return t({clearHoverDate:ie,presetDate:q,selectCurrentDate:ae,toggleMonthPicker:o,toggleYearPicker:w,toggleTimePicker:z,handleArrow:f,updateMonthYear:A,getSidebarProps:()=>({modelValue:c,month:i,year:p,time:C,updateTime:E,updateMonthYear:A,selectDate:U,presetDate:q}),changeMonth:le,changeYear:fe,selectWeekDate:u}),(K,s)=>(P(),W(we,null,[ot(Sa,{"multi-calendars":d(ce).count,collapse:K.collapse},{default:_e(({instance:L,index:J})=>[K.disableMonthYearSelect?j("",!0):(P(),De(ds,Qe({key:0,ref:$=>{$&&(pe.value[J]=$)},months:d(hr)(K.formatLocale,K.locale,K.monthNameFormat),years:d(_n)(K.yearRange,K.locale,K.reverseYears),month:d(i)(L),year:d(p)(L),instance:L},K.$props,{onMount:s[0]||(s[0]=$=>R(d(Vt).header)),onResetFlow:s[1]||(s[1]=$=>K.$emit("reset-flow")),onUpdateMonthYear:$=>d(A)(L,$),onOverlayClosed:T,onOverlayOpened:s[2]||(s[2]=$=>K.$emit("overlay-toggle",{open:!0,overlay:$}))}),je({_:2},[Ye(d(H),($,ge)=>({name:$,fn:_e(x=>[ue(K.$slots,$,We(at(x)))])}))]),1040,["months","years","month","year","instance","onUpdateMonthYear"])),ot(ys,Qe({ref:$=>{$&&(g.value[J]=$)},"mapped-dates":b.value(L),month:d(i)(L),year:d(p)(L),instance:L},K.$props,{onSelectDate:$=>d(U)($,L!==1),onHandleSpace:$=>M($,L!==1),onSetHoverDate:s[3]||(s[3]=$=>d(F)($)),onHandleScroll:$=>d(S)($,L),onHandleSwipe:$=>d(I)($,L),onMount:s[4]||(s[4]=$=>R(d(Vt).calendar)),onResetFlow:s[5]||(s[5]=$=>K.$emit("reset-flow")),onTooltipOpen:s[6]||(s[6]=$=>K.$emit("tooltip-open",$)),onTooltipClose:s[7]||(s[7]=$=>K.$emit("tooltip-close",$))}),je({_:2},[Ye(d(y),($,ge)=>({name:$,fn:_e(x=>[ue(K.$slots,$,We(at({...x})))])}))]),1040,["mapped-dates","month","year","instance","onSelectDate","onHandleSpace","onHandleScroll","onHandleSwipe"])]),_:3},8,["multi-calendars","collapse"]),K.enableTimePicker?(P(),W("div",bs,[K.$slots["time-picker"]?ue(K.$slots,"time-picker",We(Qe({key:0},{time:d(C),updateTime:d(E)}))):(P(),De(Sr,Qe({key:1,ref_key:"timePickerRef",ref:D},K.$props,{hours:d(C).hours,minutes:d(C).minutes,seconds:d(C).seconds,"internal-model-value":K.internalModelValue,"disabled-times-config":d(m),"validate-time":d(h),onMount:s[8]||(s[8]=L=>R(d(Vt).timePicker)),"onUpdate:hours":s[9]||(s[9]=L=>d(E)(L)),"onUpdate:minutes":s[10]||(s[10]=L=>d(E)(L,!1)),"onUpdate:seconds":s[11]||(s[11]=L=>d(E)(L,!1,!0)),onResetFlow:s[12]||(s[12]=L=>K.$emit("reset-flow")),onOverlayClosed:s[13]||(s[13]=L=>Ve(L,!1)),onOverlayOpened:s[14]||(s[14]=L=>Ve(L,!0)),onAmPmChange:s[15]||(s[15]=L=>K.$emit("am-pm-change",L))}),je({_:2},[Ye(d(re),(L,J)=>({name:L,fn:_e($=>[ue(K.$slots,L,We(at($)))])}))]),1040,["hours","minutes","seconds","internal-model-value","disabled-times-config","validate-time"]))])):j("",!0)],64))}}),_s=(e,t)=>{const n=Z(),{defaultedMultiCalendars:a,defaultedConfig:r,defaultedHighlight:l,defaultedRange:i,propDates:p,defaultedFilters:c,defaultedMultiDates:C}=Se(e),{modelValue:m,year:v,month:h,calendars:k}=ba(e,t),{isDisabled:Y}=Et(e),{selectYear:f,groupedYears:S,showYearPicker:I,isDisabled:U,toggleYearPicker:A,handleYearSelect:q,handleYear:ae}=Yr({modelValue:m,multiCalendars:a,range:i,highlight:l,calendars:k,propDates:p,month:h,year:v,filters:c,props:e,emit:t}),E=(D,y)=>[D,y].map(H=>kt(H,"MMMM",{locale:e.formatLocale})).join("-"),B=G(()=>D=>m.value?Array.isArray(m.value)?m.value.some(y=>Bn(D,y)):Bn(m.value,D):!1),ne=D=>{if(i.value.enabled){if(Array.isArray(m.value)){const y=Me(D,m.value[0])||Me(D,m.value[1]);return $a(m.value,n.value,D)&&!y}return!1}return!1},F=(D,y)=>D.quarter===$n(y)&&D.year===he(y),N=D=>typeof l.value=="function"?l.value({quarter:$n(D),year:he(D)}):!!l.value.quarters.find(y=>F(y,D)),ie=G(()=>D=>{const y=Ce(new Date,{year:v.value(D)});return el({start:ma(y),end:tr(y)}).map(H=>{const re=Ht(H),R=Yn(H),b=Y(H),oe=ne(re),V=N(re);return{text:E(re,R),value:re,active:B.value(re),highlighted:V,disabled:b,isBetween:oe}})}),ce=D=>{Dn(D,m,C.value.limit),t("auto-apply",!0)},pe=D=>{m.value=Tn(m,D,t),Ra(m.value,t,e.autoApply,e.modelAuto)},g=D=>{m.value=D,t("auto-apply")};return{defaultedConfig:r,defaultedMultiCalendars:a,groupedYears:S,year:v,isDisabled:U,quarters:ie,showYearPicker:I,modelValue:m,setHoverDate:D=>{n.value=D},selectYear:f,selectQuarter:(D,y,H)=>{if(!H)return k.value[y].month=xe(Yn(D)),C.value.enabled?ce(D):i.value.enabled?pe(D):g(D)},toggleYearPicker:A,handleYearSelect:q,handleYear:ae}},ks={class:"dp--quarter-items"},xs=["data-test","disabled","onClick","onMouseover"],Ms=ze({compatConfig:{MODE:3},__name:"QuarterPicker",props:{...yt},emits:["update:internal-model-value","reset-flow","overlay-closed","auto-apply","range-start","range-end","overlay-toggle","update-month-year"],setup(e,{expose:t,emit:n}){const a=n,r=e,l=qt(),i=lt(l,"yearMode"),{defaultedMultiCalendars:p,defaultedConfig:c,groupedYears:C,year:m,isDisabled:v,quarters:h,modelValue:k,showYearPicker:Y,setHoverDate:f,selectQuarter:S,toggleYearPicker:I,handleYearSelect:U,handleYear:A}=_s(r,a);return t({getSidebarProps:()=>({modelValue:k,year:m,selectQuarter:S,handleYearSelect:U,handleYear:A})}),(q,ae)=>(P(),De(Sa,{"multi-calendars":d(p).count,collapse:q.collapse,stretch:""},{default:_e(({instance:E})=>[ye("div",{class:"dp-quarter-picker-wrap",style:dt({minHeight:`${d(c).modeHeight}px`})},[q.$slots["top-extra"]?ue(q.$slots,"top-extra",{key:0,value:q.internalModelValue}):j("",!0),ye("div",null,[ot(Cr,Qe(q.$props,{items:d(C)(E),instance:E,"show-year-picker":d(Y)[E],year:d(m)(E),"is-disabled":B=>d(v)(E,B),onHandleYear:B=>d(A)(E,B),onYearSelect:B=>d(U)(B,E),onToggleYearPicker:B=>d(I)(E,B?.flow,B?.show)}),je({_:2},[Ye(d(i),(B,ne)=>({name:B,fn:_e(F=>[ue(q.$slots,B,We(at(F)))])}))]),1040,["items","instance","show-year-picker","year","is-disabled","onHandleYear","onYearSelect","onToggleYearPicker"])]),ye("div",ks,[(P(!0),W(we,null,Ye(d(h)(E),(B,ne)=>(P(),W("div",{key:ne},[ye("button",{type:"button",class:ke(["dp--qr-btn",{"dp--qr-btn-active":B.active,"dp--qr-btn-between":B.isBetween,"dp--qr-btn-disabled":B.disabled,"dp--highlighted":B.highlighted}]),"data-test":B.value,disabled:B.disabled,onClick:F=>d(S)(B.value,E,B.disabled),onMouseover:F=>d(f)(B.value)},[q.$slots.quarter?ue(q.$slots,"quarter",{key:0,value:B.value,text:B.text}):(P(),W(we,{key:1},[Dt(Ge(B.text),1)],64))],42,xs)]))),128))])],4)]),_:3},8,["multi-calendars","collapse"]))}}),Ds=["id","tabindex","role","aria-label"],Ts={key:0,class:"dp--menu-load-container"},Ps={key:1,class:"dp--menu-header"},As={key:0,class:"dp__sidebar_left"},Cs=["data-test","onClick","onKeydown"],Os={key:2,class:"dp__sidebar_right"},$s={key:3,class:"dp__action_extra"},Un=ze({compatConfig:{MODE:3},__name:"DatepickerMenu",props:{...Ya,shadow:{type:Boolean,default:!1},openOnTop:{type:Boolean,default:!1},internalModelValue:{type:[Date,Array],default:null},noOverlayFocus:{type:Boolean,default:!1},collapse:{type:Boolean,default:!1},getInputRect:{type:Function,default:()=>({})},isTextInputDate:{type:Boolean,default:!1}},emits:["close-picker","select-date","auto-apply","time-update","flow-step","update-month-year","invalid-select","update:internal-model-value","recalculate-position","invalid-fixed-range","tooltip-open","tooltip-close","time-picker-open","time-picker-close","am-pm-change","range-start","range-end","auto-apply-invalid","date-update","invalid-date","overlay-toggle"],setup(e,{expose:t,emit:n}){const a=n,r=e,l=Z(null),i=G(()=>{const{openOnTop:x,...X}=r;return{...X,flowStep:F.value,collapse:r.collapse,noOverlayFocus:r.noOverlayFocus,menuWrapRef:l.value}}),{setMenuFocused:p,setShiftKey:c,control:C}=Ar(),m=qt(),{defaultedTextInput:v,defaultedInline:h,defaultedConfig:k,defaultedUI:Y}=Se(r),f=Z(null),S=Z(0),I=Z(null),U=Z(!1),A=Z(null);Ke(()=>{if(!r.shadow){U.value=!0,q(),window.addEventListener("resize",q);const x=Fe(l);if(x&&!v.value.enabled&&!h.value.enabled&&(p(!0),y()),x){const X=de=>{k.value.allowPreventDefault&&de.preventDefault(),Yt(de,k.value,!0)};x.addEventListener("pointerdown",X),x.addEventListener("mousedown",X)}}}),Ca(()=>{window.removeEventListener("resize",q)});const q=()=>{const x=Fe(I);x&&(S.value=x.getBoundingClientRect().width)},{arrowRight:ae,arrowLeft:E,arrowDown:B,arrowUp:ne}=It(),{flowStep:F,updateFlowStep:N,childMount:ie,resetFlow:ce,handleFlow:pe}=Es(r,a,A),g=G(()=>r.monthPicker?qi:r.yearPicker?Qi:r.timePicker?rs:r.quarterPicker?Ms:ws),D=G(()=>{var x;if(k.value.arrowLeft)return k.value.arrowLeft;const X=(x=l.value)==null?void 0:x.getBoundingClientRect(),de=r.getInputRect();return de?.width=(X?.right??0)&&de?.width{const x=Fe(l);x&&x.focus({preventScroll:!0})},H=G(()=>{var x;return((x=A.value)==null?void 0:x.getSidebarProps())||{}}),re=()=>{r.openOnTop&&a("recalculate-position")},R=lt(m,"action"),b=G(()=>r.monthPicker||r.yearPicker?lt(m,"monthYear"):r.timePicker?lt(m,"timePicker"):lt(m,"shared")),oe=G(()=>r.openOnTop?"dp__arrow_bottom":"dp__arrow_top"),V=G(()=>({dp__menu_disabled:r.disabled,dp__menu_readonly:r.readonly,"dp-menu-loading":r.loading})),M=G(()=>({dp__menu:!0,dp__menu_index:!h.value.enabled,dp__relative:h.value.enabled,...Y.value.menu??{}})),o=x=>{Yt(x,k.value,!0)},w=()=>{r.escClose&&a("close-picker")},z=x=>{if(r.arrowNavigation){if(x===Ze.up)return ne();if(x===Ze.down)return B();if(x===Ze.left)return E();if(x===Ze.right)return ae()}else x===Ze.left||x===Ze.up?T("handleArrow",Ze.left,0,x===Ze.up):T("handleArrow",Ze.right,0,x===Ze.down)},u=x=>{c(x.shiftKey),!r.disableMonthYearSelect&&x.code===$e.tab&&x.target.classList.contains("dp__menu")&&C.value.shiftKeyInMenu&&(x.preventDefault(),Yt(x,k.value,!0),a("close-picker"))},le=()=>{y(),a("time-picker-close")},fe=x=>{var X,de,be;(X=A.value)==null||X.toggleTimePicker(!1,!1),(de=A.value)==null||de.toggleMonthPicker(!1,!1,x),(be=A.value)==null||be.toggleYearPicker(!1,!1,x)},Ve=(x,X=0)=>{var de,be,st;return x==="month"?(de=A.value)==null?void 0:de.toggleMonthPicker(!1,!0,X):x==="year"?(be=A.value)==null?void 0:be.toggleYearPicker(!1,!0,X):x==="time"?(st=A.value)==null?void 0:st.toggleTimePicker(!0,!1):fe(X)},T=(x,...X)=>{var de,be;(de=A.value)!=null&&de[x]&&((be=A.value)==null||be[x](...X))},K=()=>{T("selectCurrentDate")},s=(x,X)=>{T("presetDate",x,X)},L=()=>{T("clearHoverDate")},J=(x,X)=>{T("updateMonthYear",x,X)},$=(x,X)=>{x.preventDefault(),z(X)},ge=x=>{var X,de,be;if(u(x),x.key===$e.home||x.key===$e.end)return T("selectWeekDate",x.key===$e.home,x.target.getAttribute("id"));switch((x.key===$e.pageUp||x.key===$e.pageDown)&&(x.shiftKey?(T("changeYear",x.key===$e.pageUp),(X=on(l.value,"overlay-year"))==null||X.focus()):(T("changeMonth",x.key===$e.pageUp),(de=on(l.value,x.key===$e.pageUp?"action-prev":"action-next"))==null||de.focus()),x.target.getAttribute("id")&&((be=l.value)==null||be.focus({preventScroll:!0}))),x.key){case $e.esc:return w();case $e.arrowLeft:return $(x,Ze.left);case $e.arrowRight:return $(x,Ze.right);case $e.arrowUp:return $(x,Ze.up);case $e.arrowDown:return $(x,Ze.down);default:return}};return t({updateMonthYear:J,switchView:Ve,handleFlow:pe}),(x,X)=>{var de,be,st;return P(),W("div",{id:x.uid?`dp-menu-${x.uid}`:void 0,ref_key:"dpMenuRef",ref:l,tabindex:d(h).enabled?void 0:"0",role:d(h).enabled?void 0:"dialog","aria-label":(de=x.ariaLabels)==null?void 0:de.menu,class:ke(M.value),style:dt({"--dp-arrow-left":D.value}),onMouseleave:L,onClick:o,onKeydown:ge},[(x.disabled||x.readonly)&&d(h).enabled||x.loading?(P(),W("div",{key:0,class:ke(V.value)},[x.loading?(P(),W("div",Ts,X[19]||(X[19]=[ye("span",{class:"dp--menu-loader"},null,-1)]))):j("",!0)],2)):j("",!0),x.$slots["menu-header"]?(P(),W("div",Ps,[ue(x.$slots,"menu-header")])):j("",!0),!d(h).enabled&&!x.teleportCenter?(P(),W("div",{key:2,class:ke(oe.value)},null,2)):j("",!0),ye("div",{ref_key:"innerMenuRef",ref:I,class:ke({dp__menu_content_wrapper:((be=x.presetDates)==null?void 0:be.length)||!!x.$slots["left-sidebar"]||!!x.$slots["right-sidebar"],"dp--menu-content-wrapper-collapsed":e.collapse&&(((st=x.presetDates)==null?void 0:st.length)||!!x.$slots["left-sidebar"]||!!x.$slots["right-sidebar"])}),style:dt({"--dp-menu-width":`${S.value}px`})},[x.$slots["left-sidebar"]?(P(),W("div",As,[ue(x.$slots,"left-sidebar",We(at(H.value)))])):j("",!0),x.presetDates.length?(P(),W("div",{key:1,class:ke({"dp--preset-dates-collapsed":e.collapse,"dp--preset-dates":!0})},[(P(!0),W(we,null,Ye(x.presetDates,(me,Pt)=>(P(),W(we,{key:Pt},[me.slot?ue(x.$slots,me.slot,{key:0,presetDate:s,label:me.label,value:me.value}):(P(),W("button",{key:1,type:"button",style:dt(me.style||{}),class:ke(["dp__btn dp--preset-range",{"dp--preset-range-collapsed":e.collapse}]),"data-test":me.testId??void 0,onClick:va(gt=>s(me.value,me.noTz),["prevent"]),onKeydown:gt=>d(et)(gt,()=>s(me.value,me.noTz),!0)},Ge(me.label),47,Cs))],64))),128))],2)):j("",!0),ye("div",{ref_key:"calendarWrapperRef",ref:f,class:"dp__instance_calendar",role:"document"},[(P(),De(Oa(g.value),Qe({ref_key:"dynCmpRef",ref:A},i.value,{"flow-step":d(F),onMount:d(ie),onUpdateFlowStep:d(N),onResetFlow:d(ce),onFocusMenu:y,onSelectDate:X[0]||(X[0]=me=>x.$emit("select-date")),onDateUpdate:X[1]||(X[1]=me=>x.$emit("date-update",me)),onTooltipOpen:X[2]||(X[2]=me=>x.$emit("tooltip-open",me)),onTooltipClose:X[3]||(X[3]=me=>x.$emit("tooltip-close",me)),onAutoApply:X[4]||(X[4]=me=>x.$emit("auto-apply",me)),onRangeStart:X[5]||(X[5]=me=>x.$emit("range-start",me)),onRangeEnd:X[6]||(X[6]=me=>x.$emit("range-end",me)),onInvalidFixedRange:X[7]||(X[7]=me=>x.$emit("invalid-fixed-range",me)),onTimeUpdate:X[8]||(X[8]=me=>x.$emit("time-update")),onAmPmChange:X[9]||(X[9]=me=>x.$emit("am-pm-change",me)),onTimePickerOpen:X[10]||(X[10]=me=>x.$emit("time-picker-open",me)),onTimePickerClose:le,onRecalculatePosition:re,onUpdateMonthYear:X[11]||(X[11]=me=>x.$emit("update-month-year",me)),onAutoApplyInvalid:X[12]||(X[12]=me=>x.$emit("auto-apply-invalid",me)),onInvalidDate:X[13]||(X[13]=me=>x.$emit("invalid-date",me)),onOverlayToggle:X[14]||(X[14]=me=>x.$emit("overlay-toggle",me)),"onUpdate:internalModelValue":X[15]||(X[15]=me=>x.$emit("update:internal-model-value",me))}),je({_:2},[Ye(b.value,(me,Pt)=>({name:me,fn:_e(gt=>[ue(x.$slots,me,We(at({...gt})))])}))]),1040,["flow-step","onMount","onUpdateFlowStep","onResetFlow"]))],512),x.$slots["right-sidebar"]?(P(),W("div",Os,[ue(x.$slots,"right-sidebar",We(at(H.value)))])):j("",!0),x.$slots["action-extra"]?(P(),W("div",$s,[x.$slots["action-extra"]?ue(x.$slots,"action-extra",{key:0,selectCurrentDate:K}):j("",!0)])):j("",!0)],6),!x.autoApply||d(k).keepActionRow?(P(),De(Ii,Qe({key:3,"menu-mount":U.value},i.value,{"calendar-width":S.value,onClosePicker:X[16]||(X[16]=me=>x.$emit("close-picker")),onSelectDate:X[17]||(X[17]=me=>x.$emit("select-date")),onInvalidSelect:X[18]||(X[18]=me=>x.$emit("invalid-select")),onSelectNow:K}),je({_:2},[Ye(d(R),(me,Pt)=>({name:me,fn:_e(gt=>[ue(x.$slots,me,We(at({...gt})))])}))]),1040,["menu-mount","calendar-width"])):j("",!0)],46,Ds)}}});var Ut=(e=>(e.center="center",e.left="left",e.right="right",e))(Ut||{});const Ys=({menuRef:e,menuRefInner:t,inputRef:n,pickerWrapperRef:a,inline:r,emit:l,props:i,slots:p})=>{const{defaultedConfig:c}=Se(i),C=Z({}),m=Z(!1),v=Z({top:"0",left:"0"}),h=Z(!1),k=ca(i,"teleportCenter");ct(k,()=>{v.value=JSON.parse(JSON.stringify({})),ae()});const Y=y=>{if(i.teleport){const H=y.getBoundingClientRect();return{left:H.left+window.scrollX,top:H.top+window.scrollY}}return{top:0,left:0}},f=(y,H)=>{v.value.left=`${y+H-C.value.width}px`},S=y=>{v.value.left=`${y}px`},I=(y,H)=>{i.position===Ut.left&&S(y),i.position===Ut.right&&f(y,H),i.position===Ut.center&&(v.value.left=`${y+H/2-C.value.width/2}px`)},U=y=>{const{width:H,height:re}=y.getBoundingClientRect(),{top:R,left:b}=i.altPosition?i.altPosition(y):Y(y);return{top:+R,left:+b,width:H,height:re}},A=()=>{v.value.left="50%",v.value.top="50%",v.value.transform="translate(-50%, -50%)",v.value.position="fixed",delete v.value.opacity},q=()=>{const y=Fe(n),{top:H,left:re,transform:R}=i.altPosition(y);v.value={top:`${H}px`,left:`${re}px`,transform:R??""}},ae=(y=!0)=>{var H;if(!r.value.enabled){if(k.value)return A();if(i.altPosition!==null)return q();if(y){const re=i.teleport?(H=t.value)==null?void 0:H.$el:e.value;re&&(C.value=re.getBoundingClientRect()),l("recalculate-position")}return ce()}},E=({inputEl:y,left:H,width:re})=>{window.screen.width>768&&!m.value&&I(H,re),F(y)},B=y=>{const{top:H,left:re,height:R,width:b}=U(y);v.value.top=`${R+H+ +i.offset}px`,h.value=!1,m.value||(v.value.left=`${re+b/2-C.value.width/2}px`),E({inputEl:y,left:re,width:b})},ne=y=>{const{top:H,left:re,width:R}=U(y);v.value.top=`${H-+i.offset-C.value.height}px`,h.value=!0,E({inputEl:y,left:re,width:R})},F=y=>{if(i.autoPosition){const{left:H,width:re}=U(y),{left:R,right:b}=C.value;if(!m.value){if(Math.abs(R)!==Math.abs(b)){if(R<=0)return m.value=!0,S(H);if(b>=document.documentElement.clientWidth)return m.value=!0,f(H,re)}return I(H,re)}}},N=()=>{const y=Fe(n);if(y){const{height:H}=C.value,{top:re,height:R}=y.getBoundingClientRect(),b=window.innerHeight-re-R,oe=re;return H<=b?Lt.bottom:H>b&&H<=oe?Lt.top:b>=oe?Lt.bottom:Lt.top}return Lt.bottom},ie=y=>N()===Lt.bottom?B(y):ne(y),ce=()=>{const y=Fe(n);if(y)return i.autoPosition?ie(y):B(y)},pe=function(y){if(y){const H=y.scrollHeight>y.clientHeight,re=window.getComputedStyle(y).overflowY.indexOf("hidden")!==-1;return H&&!re}return!0},g=function(y){return!y||y===document.body||y.nodeType===Node.DOCUMENT_FRAGMENT_NODE?window:pe(y)?y:g(y.assignedSlot&&c.value.shadowDom?y.assignedSlot.parentNode:y.parentNode)},D=y=>{if(y)switch(i.position){case Ut.left:return{left:0,transform:"translateX(0)"};case Ut.right:return{left:`${y.width}px`,transform:"translateX(-100%)"};default:return{left:`${y.width/2}px`,transform:"translateX(-50%)"}}return{}};return{openOnTop:h,menuStyle:v,xCorrect:m,setMenuPosition:ae,getScrollableParent:g,shadowRender:(y,H)=>{var re,R,b;const oe=document.createElement("div"),V=(re=Fe(n))==null?void 0:re.getBoundingClientRect();oe.setAttribute("id","dp--temp-container");const M=(R=a.value)!=null&&R.clientWidth?a.value:document.body;M.append(oe);const o=D(V),w=c.value.shadowDom?Object.keys(p).filter(u=>["right-sidebar","left-sidebar","top-extra","action-extra"].includes(u)):Object.keys(p),z=Nr(y,{...H,shadow:!0,style:{opacity:0,position:"absolute",...o}},Object.fromEntries(w.map(u=>[u,p[u]])));An(z,oe),C.value=(b=z.el)==null?void 0:b.getBoundingClientRect(),An(null,oe),M.removeChild(oe)}}},Ot=[{name:"clock-icon",use:["time","calendar","shared"]},{name:"arrow-left",use:["month-year","calendar","shared","year-mode"]},{name:"arrow-right",use:["month-year","calendar","shared","year-mode"]},{name:"arrow-up",use:["time","calendar","month-year","shared"]},{name:"arrow-down",use:["time","calendar","month-year","shared"]},{name:"calendar-icon",use:["month-year","time","calendar","shared","year-mode"]},{name:"day",use:["calendar","shared"]},{name:"month-overlay-value",use:["calendar","month-year","shared"]},{name:"year-overlay-value",use:["calendar","month-year","shared","year-mode"]},{name:"year-overlay",use:["month-year","shared"]},{name:"month-overlay",use:["month-year","shared"]},{name:"month-overlay-header",use:["month-year","shared"]},{name:"year-overlay-header",use:["month-year","shared"]},{name:"hours-overlay-value",use:["calendar","time","shared"]},{name:"hours-overlay-header",use:["calendar","time","shared"]},{name:"minutes-overlay-value",use:["calendar","time","shared"]},{name:"minutes-overlay-header",use:["calendar","time","shared"]},{name:"seconds-overlay-value",use:["calendar","time","shared"]},{name:"seconds-overlay-header",use:["calendar","time","shared"]},{name:"hours",use:["calendar","time","shared"]},{name:"minutes",use:["calendar","time","shared"]},{name:"month",use:["calendar","month-year","shared"]},{name:"year",use:["calendar","month-year","shared","year-mode"]},{name:"action-buttons",use:["action"]},{name:"action-preview",use:["action"]},{name:"calendar-header",use:["calendar","shared"]},{name:"marker-tooltip",use:["calendar","shared"]},{name:"action-extra",use:["menu"]},{name:"time-picker-overlay",use:["calendar","time","shared"]},{name:"am-pm-button",use:["calendar","time","shared"]},{name:"left-sidebar",use:["menu"]},{name:"right-sidebar",use:["menu"]},{name:"month-year",use:["month-year","shared"]},{name:"time-picker",use:["menu","shared"]},{name:"action-row",use:["action"]},{name:"marker",use:["calendar","shared"]},{name:"quarter",use:["shared"]},{name:"top-extra",use:["shared","month-year"]},{name:"tp-inline-arrow-up",use:["shared","time"]},{name:"tp-inline-arrow-down",use:["shared","time"]},{name:"menu-header",use:["menu"]}],Ss=[{name:"trigger"},{name:"input-icon"},{name:"clear-icon"},{name:"dp-input"}],Rs={all:()=>Ot,monthYear:()=>Ot.filter(e=>e.use.includes("month-year")),input:()=>Ss,timePicker:()=>Ot.filter(e=>e.use.includes("time")),action:()=>Ot.filter(e=>e.use.includes("action")),calendar:()=>Ot.filter(e=>e.use.includes("calendar")),menu:()=>Ot.filter(e=>e.use.includes("menu")),shared:()=>Ot.filter(e=>e.use.includes("shared")),yearMode:()=>Ot.filter(e=>e.use.includes("year-mode"))},lt=(e,t,n)=>{const a=[];return Rs[t]().forEach(r=>{e[r.name]&&a.push(r.name)}),n!=null&&n.length&&n.forEach(r=>{r.slot&&a.push(r.slot)}),a},ga=e=>{const t=G(()=>a=>e.value?a?e.value.open:e.value.close:""),n=G(()=>a=>e.value?a?e.value.menuAppearTop:e.value.menuAppearBottom:"");return{transitionName:t,showTransition:!!e.value,menuTransition:n}},ba=(e,t,n)=>{const{defaultedRange:a,defaultedTz:r}=Se(e),l=Q(nt(Q(),r.value.timezone)),i=Z([{month:xe(l),year:he(l)}]),p=h=>{const k={hours:Tt(l),minutes:Rt(l),seconds:0};return a.value.enabled?[k[h],k[h]]:k[h]},c=ha({hours:p("hours"),minutes:p("minutes"),seconds:p("seconds")});ct(a,(h,k)=>{h.enabled!==k.enabled&&(c.hours=p("hours"),c.minutes=p("minutes"),c.seconds=p("seconds"))},{deep:!0});const C=G({get:()=>e.internalModelValue,set:h=>{!e.readonly&&!e.disabled&&t("update:internal-model-value",h)}}),m=G(()=>h=>i.value[h]?i.value[h].month:0),v=G(()=>h=>i.value[h]?i.value[h].year:0);return ct(C,(h,k)=>{n&&JSON.stringify(h??{})!==JSON.stringify(k??{})&&n()},{deep:!0}),{calendars:i,time:c,modelValue:C,month:m,year:v,today:l}},Is=(e,t)=>{const{defaultedMultiCalendars:n,defaultedMultiDates:a,defaultedUI:r,defaultedHighlight:l,defaultedTz:i,propDates:p,defaultedRange:c}=Se(t),{isDisabled:C}=Et(t),m=Z(null),v=Z(nt(new Date,i.value.timezone)),h=o=>{!o.current&&t.hideOffsetDates||(m.value=o.value)},k=()=>{m.value=null},Y=o=>Array.isArray(e.value)&&c.value.enabled&&e.value[0]&&m.value?o?Ne(m.value,e.value[0]):Ie(m.value,e.value[0]):!0,f=(o,w)=>{const z=()=>e.value?w?e.value[0]||null:e.value[1]:null,u=e.value&&Array.isArray(e.value)?z():null;return Me(Q(o.value),u)},S=o=>{const w=Array.isArray(e.value)?e.value[0]:null;return o?!Ie(m.value??null,w):!0},I=(o,w=!0)=>(c.value.enabled||t.weekPicker)&&Array.isArray(e.value)&&e.value.length===2?t.hideOffsetDates&&!o.current?!1:Me(Q(o.value),e.value[w?0:1]):c.value.enabled?f(o,w)&&S(w)||Me(o.value,Array.isArray(e.value)?e.value[0]:null)&&Y(w):!1,U=(o,w)=>{if(Array.isArray(e.value)&&e.value[0]&&e.value.length===1){const z=Me(o.value,m.value);return w?Ne(e.value[0],o.value)&&z:Ie(e.value[0],o.value)&&z}return!1},A=o=>!e.value||t.hideOffsetDates&&!o.current?!1:c.value.enabled?t.modelAuto&&Array.isArray(e.value)?Me(o.value,e.value[0]?e.value[0]:v.value):!1:a.value.enabled&&Array.isArray(e.value)?e.value.some(w=>Me(w,o.value)):Me(o.value,e.value?e.value:v.value),q=o=>{if(c.value.autoRange||t.weekPicker){if(m.value){if(t.hideOffsetDates&&!o.current)return!1;const w=mt(m.value,+c.value.autoRange),z=xt(Q(m.value),t.weekStart);return t.weekPicker?Me(z[1],Q(o.value)):Me(w,Q(o.value))}return!1}return!1},ae=o=>{if(c.value.autoRange||t.weekPicker){if(m.value){const w=mt(m.value,+c.value.autoRange);if(t.hideOffsetDates&&!o.current)return!1;const z=xt(Q(m.value),t.weekStart);return t.weekPicker?Ne(o.value,z[0])&&Ie(o.value,z[1]):Ne(o.value,m.value)&&Ie(o.value,w)}return!1}return!1},E=o=>{if(c.value.autoRange||t.weekPicker){if(m.value){if(t.hideOffsetDates&&!o.current)return!1;const w=xt(Q(m.value),t.weekStart);return t.weekPicker?Me(w[0],o.value):Me(m.value,o.value)}return!1}return!1},B=o=>$a(e.value,m.value,o.value),ne=()=>t.modelAuto&&Array.isArray(t.internalModelValue)?!!t.internalModelValue[0]:!1,F=()=>t.modelAuto?yr(t.internalModelValue):!0,N=o=>{if(t.weekPicker)return!1;const w=c.value.enabled?!I(o)&&!I(o,!1):!0;return!C(o.value)&&!A(o)&&!(!o.current&&t.hideOffsetDates)&&w},ie=o=>c.value.enabled?t.modelAuto?ne()&&A(o):!1:A(o),ce=o=>l.value?oi(o.value,p.value.highlight):!1,pe=o=>{const w=C(o.value);return w&&(typeof l.value=="function"?!l.value(o.value,w):!l.value.options.highlightDisabled)},g=o=>{var w;return typeof l.value=="function"?l.value(o.value):(w=l.value.weekdays)==null?void 0:w.includes(o.value.getDay())},D=o=>(c.value.enabled||t.weekPicker)&&(!(n.value.count>0)||o.current)&&F()&&!(!o.current&&t.hideOffsetDates)&&!A(o)?B(o):!1,y=o=>{const{isRangeStart:w,isRangeEnd:z}=b(o),u=c.value.enabled?w||z:!1;return{dp__cell_offset:!o.current,dp__pointer:!t.disabled&&!(!o.current&&t.hideOffsetDates)&&!C(o.value),dp__cell_disabled:C(o.value),dp__cell_highlight:!pe(o)&&(ce(o)||g(o))&&!ie(o)&&!u&&!E(o)&&!(D(o)&&t.weekPicker)&&!z,dp__cell_highlight_active:!pe(o)&&(ce(o)||g(o))&&ie(o),dp__today:!t.noToday&&Me(o.value,v.value)&&o.current,"dp--past":Ie(o.value,v.value),"dp--future":Ne(o.value,v.value)}},H=o=>({dp__active_date:ie(o),dp__date_hover:N(o)}),re=o=>{if(e.value&&!Array.isArray(e.value)){const w=xt(e.value,t.weekStart);return{...V(o),dp__range_start:Me(w[0],o.value),dp__range_end:Me(w[1],o.value),dp__range_between_week:Ne(o.value,w[0])&&Ie(o.value,w[1])}}return{...V(o)}},R=o=>{if(e.value&&Array.isArray(e.value)){const w=xt(e.value[0],t.weekStart),z=e.value[1]?xt(e.value[1],t.weekStart):[];return{...V(o),dp__range_start:Me(w[0],o.value)||Me(z[0],o.value),dp__range_end:Me(w[1],o.value)||Me(z[1],o.value),dp__range_between_week:Ne(o.value,w[0])&&Ie(o.value,w[1])||Ne(o.value,z[0])&&Ie(o.value,z[1]),dp__range_between:Ne(o.value,w[1])&&Ie(o.value,z[0])}}return{...V(o)}},b=o=>{const w=n.value.count>0?o.current&&I(o)&&F():I(o)&&F(),z=n.value.count>0?o.current&&I(o,!1)&&F():I(o,!1)&&F();return{isRangeStart:w,isRangeEnd:z}},oe=o=>{const{isRangeStart:w,isRangeEnd:z}=b(o);return{dp__range_start:w,dp__range_end:z,dp__range_between:D(o),dp__date_hover:Me(o.value,m.value)&&!w&&!z&&!t.weekPicker,dp__date_hover_start:U(o,!0),dp__date_hover_end:U(o,!1)}},V=o=>({...oe(o),dp__cell_auto_range:ae(o),dp__cell_auto_range_start:E(o),dp__cell_auto_range_end:q(o)}),M=o=>c.value.enabled?c.value.autoRange?V(o):t.modelAuto?{...H(o),...oe(o)}:t.weekPicker?R(o):oe(o):t.weekPicker?re(o):H(o);return{setHoverDate:h,clearHoverDate:k,getDayClassData:o=>t.hideOffsetDates&&!o.current?{}:{...y(o),...M(o),[t.dayClass?t.dayClass(o.value,t.internalModelValue):""]:!0,...r.value.calendarCell??{}}}},Et=e=>{const{defaultedFilters:t,defaultedRange:n,propDates:a,defaultedMultiDates:r}=Se(e),l=g=>a.value.disabledDates?typeof a.value.disabledDates=="function"?a.value.disabledDates(Q(g)):!!Aa(g,a.value.disabledDates):!1,i=g=>a.value.maxDate?e.yearPicker?he(g)>he(a.value.maxDate):Ne(g,a.value.maxDate):!1,p=g=>a.value.minDate?e.yearPicker?he(g){const D=i(g),y=p(g),H=l(g),re=t.value.months.map(M=>+M).includes(xe(g)),R=e.disabledWeekDays.length?e.disabledWeekDays.some(M=>+M===Ul(g)):!1,b=k(g),oe=he(g),V=oe<+e.yearRange[0]||oe>+e.yearRange[1];return!(D||y||H||re||V||R||b)},C=(g,D)=>Ie(...$t(a.value.minDate,g,D))||Me(...$t(a.value.minDate,g,D)),m=(g,D)=>Ne(...$t(a.value.maxDate,g,D))||Me(...$t(a.value.maxDate,g,D)),v=(g,D,y)=>{let H=!1;return a.value.maxDate&&y&&m(g,D)&&(H=!0),a.value.minDate&&!y&&C(g,D)&&(H=!0),H},h=(g,D,y,H)=>{let re=!1;return H&&(a.value.minDate||a.value.maxDate)?a.value.minDate&&a.value.maxDate?re=v(g,D,y):(a.value.minDate&&C(g,D)||a.value.maxDate&&m(g,D))&&(re=!0):re=!0,re},k=g=>Array.isArray(a.value.allowedDates)&&!a.value.allowedDates.length?!0:a.value.allowedDates?!Aa(g,a.value.allowedDates):!1,Y=g=>!c(g),f=g=>n.value.noDisabledRange?!er({start:g[0],end:g[1]}).some(D=>Y(D)):!0,S=g=>{if(g){const D=he(g);return D>=+e.yearRange[0]&&D<=e.yearRange[1]}return!0},I=(g,D)=>!!(Array.isArray(g)&&g[D]&&(n.value.maxRange||n.value.minRange)&&S(g[D])),U=(g,D,y=0)=>{if(I(D,y)&&S(g)){const H=Jn(g,D[y]),re=kr(D[y],g),R=re.length===1?0:re.filter(oe=>Y(oe)).length,b=Math.abs(H)-(n.value.minMaxRawRange?0:R);if(n.value.minRange&&n.value.maxRange)return b>=+n.value.minRange&&b<=+n.value.maxRange;if(n.value.minRange)return b>=+n.value.minRange;if(n.value.maxRange)return b<=+n.value.maxRange}return!0},A=()=>!e.enableTimePicker||e.monthPicker||e.yearPicker||e.ignoreTimeValidation,q=g=>Array.isArray(g)?[g[0]?Ga(g[0]):null,g[1]?Ga(g[1]):null]:Ga(g),ae=(g,D,y)=>g.find(H=>+H.hours===Tt(D)&&H.minutes==="*"?!0:+H.minutes===Rt(D)&&+H.hours===Tt(D))&&y,E=(g,D,y)=>{const[H,re]=g,[R,b]=D;return!ae(H,R,y)&&!ae(re,b,y)&&y},B=(g,D)=>{const y=Array.isArray(D)?D:[D];return Array.isArray(e.disabledTimes)?Array.isArray(e.disabledTimes[0])?E(e.disabledTimes,y,g):!y.some(H=>ae(e.disabledTimes,H,g)):g},ne=(g,D)=>{const y=Array.isArray(D)?[Ft(D[0]),D[1]?Ft(D[1]):void 0]:Ft(D),H=!e.disabledTimes(y);return g&&H},F=(g,D)=>e.disabledTimes?Array.isArray(e.disabledTimes)?B(D,g):ne(D,g):D,N=g=>{let D=!0;if(!g||A())return!0;const y=!a.value.minDate&&!a.value.maxDate?q(g):g;return(e.maxTime||a.value.maxDate)&&(D=qn(e.maxTime,a.value.maxDate,"max",qe(y),D)),(e.minTime||a.value.minDate)&&(D=qn(e.minTime,a.value.minDate,"min",qe(y),D)),F(g,D)},ie=g=>{if(!e.monthPicker)return!0;let D=!0;const y=Q(pt(g));if(a.value.minDate&&a.value.maxDate){const H=Q(pt(a.value.minDate)),re=Q(pt(a.value.maxDate));return Ne(y,H)&&Ie(y,re)||Me(y,H)||Me(y,re)}if(a.value.minDate){const H=Q(pt(a.value.minDate));D=Ne(y,H)||Me(y,H)}if(a.value.maxDate){const H=Q(pt(a.value.maxDate));D=Ie(y,H)||Me(y,H)}return D},ce=G(()=>g=>!e.enableTimePicker||e.ignoreTimeValidation?!0:N(g)),pe=G(()=>g=>e.monthPicker?Array.isArray(g)&&(n.value.enabled||r.value.enabled)?!g.filter(D=>!ie(D)).length:ie(g):!0);return{isDisabled:Y,validateDate:c,validateMonthYearInRange:h,isDateRangeAllowed:f,checkMinMaxRange:U,isValidTime:N,isTimeValid:ce,isMonthValid:pe}},Ia=()=>{const e=G(()=>(a,r)=>a?.includes(r)),t=G(()=>(a,r)=>a.count?a.solo?!0:r===0:!0),n=G(()=>(a,r)=>a.count?a.solo?!0:r===a.count-1:!0);return{hideNavigationButtons:e,showLeftIcon:t,showRightIcon:n}},Es=(e,t,n)=>{const a=Z(0),r=ha({[Vt.timePicker]:!e.enableTimePicker||e.timePicker||e.monthPicker,[Vt.calendar]:!1,[Vt.header]:!1}),l=G(()=>e.monthPicker||e.timePicker),i=v=>{var h;if((h=e.flow)!=null&&h.length){if(!v&&l.value)return m();r[v]=!0,Object.keys(r).filter(k=>!r[k]).length||m()}},p=()=>{var v,h;(v=e.flow)!=null&&v.length&&a.value!==-1&&(a.value+=1,t("flow-step",a.value),m()),((h=e.flow)==null?void 0:h.length)===a.value&&it().then(()=>c())},c=()=>{a.value=-1},C=(v,h,...k)=>{var Y,f;e.flow[a.value]===v&&n.value&&((f=(Y=n.value)[h])==null||f.call(Y,...k))},m=(v=0)=>{v&&(a.value+=v),C(Xe.month,"toggleMonthPicker",!0),C(Xe.year,"toggleYearPicker",!0),C(Xe.calendar,"toggleTimePicker",!1,!0),C(Xe.time,"toggleTimePicker",!0,!0);const h=e.flow[a.value];(h===Xe.hours||h===Xe.minutes||h===Xe.seconds)&&C(h,"toggleTimePicker",!0,!0,h)};return{childMount:i,updateFlowStep:p,resetFlow:c,handleFlow:m,flowStep:a}},Bs={key:1,class:"dp__input_wrap"},Ns=["id","name","inputmode","placeholder","disabled","readonly","required","value","autocomplete","aria-label","aria-disabled","aria-invalid"],Ls={key:2,class:"dp--clear-btn"},Hs=["aria-label"],Vs=ze({compatConfig:{MODE:3},__name:"DatepickerInput",props:{isMenuOpen:{type:Boolean,default:!1},inputValue:{type:String,default:""},...Ya},emits:["clear","open","update:input-value","set-input-date","close","select-date","set-empty-date","toggle","focus-prev","focus","blur","real-blur","text-input"],setup(e,{expose:t,emit:n}){const a=n,r=e,{defaultedTextInput:l,defaultedAriaLabels:i,defaultedInline:p,defaultedConfig:c,defaultedRange:C,defaultedMultiDates:m,defaultedUI:v,getDefaultPattern:h,getDefaultStartTime:k}=Se(r),{checkMinMaxRange:Y}=Et(r),f=Z(),S=Z(null),I=Z(!1),U=Z(!1),A=G(()=>({dp__pointer:!r.disabled&&!r.readonly&&!l.value.enabled,dp__disabled:r.disabled,dp__input_readonly:!l.value.enabled,dp__input:!0,dp__input_icon_pad:!r.hideInputIcon,dp__input_valid:typeof r.state=="boolean"?r.state:!1,dp__input_invalid:typeof r.state=="boolean"?!r.state:!1,dp__input_focus:I.value||r.isMenuOpen,dp__input_reg:!l.value.enabled,...v.value.input??{}})),q=()=>{a("set-input-date",null),r.clearable&&r.autoApply&&(a("set-empty-date"),f.value=null)},ae=b=>{const oe=k();return ii(b,l.value.format??h(),oe??xr({},r.enableSeconds),r.inputValue,U.value,r.formatLocale)},E=b=>{const{rangeSeparator:oe}=l.value,[V,M]=b.split(`${oe}`);if(V){const o=ae(V.trim()),w=M?ae(M.trim()):null;if(Kt(o,w))return;const z=o&&w?[o,w]:[o];Y(w,z,0)&&(f.value=o?z:null)}},B=()=>{U.value=!0},ne=b=>{if(C.value.enabled)E(b);else if(m.value.enabled){const oe=b.split(";");f.value=oe.map(V=>ae(V.trim())).filter(V=>V)}else f.value=ae(b)},F=b=>{var oe;const V=typeof b=="string"?b:(oe=b.target)==null?void 0:oe.value;V!==""?(l.value.openMenu&&!r.isMenuOpen&&a("open"),ne(V),a("set-input-date",f.value)):q(),U.value=!1,a("update:input-value",V),a("text-input",b,f.value)},N=b=>{l.value.enabled?(ne(b.target.value),l.value.enterSubmit&&sn(f.value)&&r.inputValue!==""?(a("set-input-date",f.value,!0),f.value=null):l.value.enterSubmit&&r.inputValue===""&&(f.value=null,a("clear"))):pe(b)},ie=(b,oe)=>{l.value.enabled&&l.value.tabSubmit&&!oe&&ne(b.target.value),l.value.tabSubmit&&sn(f.value)&&r.inputValue!==""?(a("set-input-date",f.value,!0,!0),f.value=null):l.value.tabSubmit&&r.inputValue===""&&(f.value=null,a("clear",!0))},ce=()=>{I.value=!0,a("focus"),it().then(()=>{var b;l.value.enabled&&l.value.selectOnFocus&&((b=S.value)==null||b.select())})},pe=b=>{if(Yt(b,c.value,!0),l.value.enabled&&l.value.openMenu&&!p.value.input){if(l.value.openMenu==="open"&&!r.isMenuOpen)return a("open");if(l.value.openMenu==="toggle")return a("toggle")}else l.value.enabled||a("toggle")},g=()=>{a("real-blur"),I.value=!1,(!r.isMenuOpen||p.value.enabled&&p.value.input)&&a("blur"),r.autoApply&&l.value.enabled&&f.value&&!r.isMenuOpen&&(a("set-input-date",f.value),a("select-date"),f.value=null)},D=b=>{Yt(b,c.value,!0),a("clear")},y=b=>{if(b.key==="Tab"&&ie(b),b.key==="Enter"&&N(b),!l.value.enabled){if(b.code==="Tab")return;b.preventDefault()}},H=()=>{var b;(b=S.value)==null||b.focus({preventScroll:!0})},re=b=>{f.value=b},R=b=>{b.key===$e.tab&&ie(b,!0)};return t({focusInput:H,setParsedDate:re}),(b,oe)=>{var V,M,o;return P(),W("div",{onClick:pe},[b.$slots.trigger&&!b.$slots["dp-input"]&&!d(p).enabled?ue(b.$slots,"trigger",{key:0}):j("",!0),!b.$slots.trigger&&(!d(p).enabled||d(p).input)?(P(),W("div",Bs,[b.$slots["dp-input"]&&!b.$slots.trigger&&(!d(p).enabled||d(p).enabled&&d(p).input)?ue(b.$slots,"dp-input",{key:0,value:e.inputValue,isMenuOpen:e.isMenuOpen,onInput:F,onEnter:N,onTab:ie,onClear:D,onBlur:g,onKeypress:y,onPaste:B,onFocus:ce,openMenu:()=>b.$emit("open"),closeMenu:()=>b.$emit("close"),toggleMenu:()=>b.$emit("toggle")}):j("",!0),b.$slots["dp-input"]?j("",!0):(P(),W("input",{key:1,id:b.uid?`dp-input-${b.uid}`:void 0,ref_key:"inputRef",ref:S,"data-test":"dp-input",name:b.name,class:ke(A.value),inputmode:d(l).enabled?"text":"none",placeholder:b.placeholder,disabled:b.disabled,readonly:b.readonly,required:b.required,value:e.inputValue,autocomplete:b.autocomplete,"aria-label":(V=d(i))==null?void 0:V.input,"aria-disabled":b.disabled||void 0,"aria-invalid":b.state===!1?!0:void 0,onInput:F,onBlur:g,onFocus:ce,onKeypress:y,onKeydown:oe[0]||(oe[0]=w=>y(w)),onPaste:B},null,42,Ns)),ye("div",{onClick:oe[3]||(oe[3]=w=>a("toggle"))},[b.$slots["input-icon"]&&!b.hideInputIcon?(P(),W("span",{key:0,class:"dp__input_icon",onClick:oe[1]||(oe[1]=w=>a("toggle"))},[ue(b.$slots,"input-icon")])):j("",!0),!b.$slots["input-icon"]&&!b.hideInputIcon&&!b.$slots["dp-input"]?(P(),De(d(aa),{key:1,"aria-label":(M=d(i))==null?void 0:M.calendarIcon,class:"dp__input_icon dp__input_icons",onClick:oe[2]||(oe[2]=w=>a("toggle"))},null,8,["aria-label"])):j("",!0)]),b.$slots["clear-icon"]&&e.inputValue&&b.clearable&&!b.disabled&&!b.readonly?(P(),W("span",Ls,[ue(b.$slots,"clear-icon",{clear:D})])):j("",!0),b.clearable&&!b.$slots["clear-icon"]&&e.inputValue&&!b.disabled&&!b.readonly?(P(),W("button",{key:3,"aria-label":(o=d(i))==null?void 0:o.clearInput,class:"dp--clear-btn",type:"button",onKeydown:oe[4]||(oe[4]=w=>d(et)(w,()=>D(w),!0,R)),onClick:oe[5]||(oe[5]=va(w=>D(w),["prevent"]))},[ot(d(fr),{class:"dp__input_icons","data-test":"clear-icon"})],40,Hs)):j("",!0)])):j("",!0)])}}}),Fs=typeof window<"u"?window:void 0,tn=()=>{},qs=e=>Fr()?(qr(e),!0):!1,Ws=(e,t,n,a)=>{if(!e)return tn;let r=tn;const l=ct(()=>d(e),p=>{r(),p&&(p.addEventListener(t,n,a),r=()=>{p.removeEventListener(t,n,a),r=tn})},{immediate:!0,flush:"post"}),i=()=>{l(),r()};return qs(i),i},Qs=(e,t,n,a={})=>{const{window:r=Fs,event:l="pointerdown"}=a;return r?Ws(r,l,i=>{const p=Fe(e),c=Fe(t);!p||!c||p===i.target||i.composedPath().includes(p)||i.composedPath().includes(c)||n(i)},{passive:!0}):void 0},zs=ze({compatConfig:{MODE:3},__name:"VueDatePicker",props:{...Ya},emits:["update:model-value","update:model-timezone-value","text-submit","closed","cleared","open","focus","blur","internal-model-change","recalculate-position","flow-step","update-month-year","invalid-select","invalid-fixed-range","tooltip-open","tooltip-close","time-picker-open","time-picker-close","am-pm-change","range-start","range-end","date-update","invalid-date","overlay-toggle","text-input"],setup(e,{expose:t,emit:n}){const a=n,r=e,l=qt(),i=Z(!1),p=ca(r,"modelValue"),c=ca(r,"timezone"),C=Z(null),m=Z(null),v=Z(null),h=Z(!1),k=Z(null),Y=Z(!1),f=Z(!1),S=Z(!1),I=Z(!1),{setMenuFocused:U,setShiftKey:A}=Ar(),{clearArrowNav:q}=It(),{validateDate:ae,isValidTime:E}=Et(r),{defaultedTransitions:B,defaultedTextInput:ne,defaultedInline:F,defaultedConfig:N,defaultedRange:ie,defaultedMultiDates:ce}=Se(r),{menuTransition:pe,showTransition:g}=ga(B);Ke(()=>{w(r.modelValue),it().then(()=>{if(!F.value.enabled){const O=oe(k.value);O?.addEventListener("scroll",J),window?.addEventListener("resize",$)}}),F.value.enabled&&(i.value=!0),window?.addEventListener("keyup",ge),window?.addEventListener("keydown",x)}),Ca(()=>{if(!F.value.enabled){const O=oe(k.value);O?.removeEventListener("scroll",J),window?.removeEventListener("resize",$)}window?.removeEventListener("keyup",ge),window?.removeEventListener("keydown",x)});const D=lt(l,"all",r.presetDates),y=lt(l,"input");ct([p,c],()=>{w(p.value)},{deep:!0});const{openOnTop:H,menuStyle:re,xCorrect:R,setMenuPosition:b,getScrollableParent:oe,shadowRender:V}=Ys({menuRef:C,menuRefInner:m,inputRef:v,pickerWrapperRef:k,inline:F,emit:a,props:r,slots:l}),{inputValue:M,internalModelValue:o,parseExternalModelValue:w,emitModelValue:z,formatInputValue:u,checkBeforeEmit:le}=$i(a,r,h),fe=G(()=>({dp__main:!0,dp__theme_dark:r.dark,dp__theme_light:!r.dark,dp__flex_display:F.value.enabled,"dp--flex-display-collapsed":S.value,dp__flex_display_with_input:F.value.input})),Ve=G(()=>r.dark?"dp__theme_dark":"dp__theme_light"),T=G(()=>r.teleport?{to:typeof r.teleport=="boolean"?"body":r.teleport,disabled:!r.teleport||F.value.enabled}:{}),K=G(()=>({class:"dp__outer_menu_wrap"})),s=G(()=>F.value.enabled&&(r.timePicker||r.monthPicker||r.yearPicker||r.quarterPicker)),L=()=>{var O,ee;return(ee=(O=v.value)==null?void 0:O.$el)==null?void 0:ee.getBoundingClientRect()},J=()=>{i.value&&(N.value.closeOnScroll?rt():b())},$=()=>{var O;i.value&&b();const ee=(O=m.value)==null?void 0:O.$el.getBoundingClientRect().width;S.value=document.body.offsetWidth<=ee},ge=O=>{O.key==="Tab"&&!F.value.enabled&&!r.teleport&&N.value.tabOutClosesMenu&&(k.value.contains(document.activeElement)||rt()),f.value=O.shiftKey},x=O=>{f.value=O.shiftKey},X=()=>{!r.disabled&&!r.readonly&&(V(Un,r),b(!1),i.value=!0,i.value&&a("open"),i.value||na(),w(r.modelValue))},de=()=>{var O;M.value="",na(),(O=v.value)==null||O.setParsedDate(null),a("update:model-value",null),a("update:model-timezone-value",null),a("cleared"),N.value.closeOnClearValue&&rt()},be=()=>{const O=o.value;return!O||!Array.isArray(O)&&ae(O)?!0:Array.isArray(O)?ce.value.enabled||O.length===2&&ae(O[0])&&ae(O[1])?!0:ie.value.partialRange&&!r.timePicker?ae(O[0]):!1:!1},st=()=>{le()&&be()?(z(),rt()):a("invalid-select",o.value)},me=O=>{Pt(),z(),N.value.closeOnAutoApply&&!O&&rt()},Pt=()=>{v.value&&ne.value.enabled&&v.value.setParsedDate(o.value)},gt=(O=!1)=>{r.autoApply&&E(o.value)&&be()&&(ie.value.enabled&&Array.isArray(o.value)?(ie.value.partialRange||o.value.length===2)&&me(O):me(O))},na=()=>{ne.value.enabled||(o.value=null)},rt=()=>{F.value.enabled||(i.value&&(i.value=!1,R.value=!1,U(!1),A(!1),q(),a("closed"),M.value&&w(p.value)),na(),a("blur"))},ra=(O,ee,se=!1)=>{if(!O){o.value=null;return}const Je=Array.isArray(O)?!O.some(Bt=>!ae(Bt)):ae(O),ut=E(O);Je&&ut?(I.value=!0,o.value=O,ee&&(Y.value=se,st(),a("text-submit")),it().then(()=>{I.value=!1})):a("invalid-date",O)},Ea=()=>{r.autoApply&&E(o.value)&&z(),Pt()},wa=()=>i.value?rt():X(),Ba=O=>{o.value=O},Na=()=>{ne.value.enabled&&(h.value=!0,u()),a("focus")},La=()=>{if(ne.value.enabled&&(h.value=!1,w(r.modelValue),Y.value)){const O=li(k.value,f.value);O?.focus()}a("blur")},Ha=O=>{m.value&&m.value.updateMonthYear(0,{month:Ln(O.month),year:Ln(O.year)})},Va=O=>{w(O??r.modelValue)},Fa=(O,ee)=>{var se;(se=m.value)==null||se.switchView(O,ee)},_=O=>N.value.onClickOutside?N.value.onClickOutside(O):rt(),te=(O=0)=>{var ee;(ee=m.value)==null||ee.handleFlow(O)};return Qs(C,v,()=>_(be)),t({closeMenu:rt,selectDate:st,clearValue:de,openMenu:X,onScroll:J,formatInputValue:u,updateInternalModelValue:Ba,setMonthYear:Ha,parseModel:Va,switchView:Fa,toggleMenu:wa,handleFlow:te,dpWrapMenuRef:C}),(O,ee)=>(P(),W("div",{ref_key:"pickerWrapperRef",ref:k,class:ke(fe.value),"data-datepicker-instance":""},[ot(Vs,Qe({ref_key:"inputRef",ref:v,"input-value":d(M),"onUpdate:inputValue":ee[0]||(ee[0]=se=>Pn(M)?M.value=se:null),"is-menu-open":i.value},O.$props,{onClear:de,onOpen:X,onSetInputDate:ra,onSetEmptyDate:d(z),onSelectDate:st,onToggle:wa,onClose:rt,onFocus:Na,onBlur:La,onRealBlur:ee[1]||(ee[1]=se=>h.value=!1),onTextInput:ee[2]||(ee[2]=se=>O.$emit("text-input",se))}),je({_:2},[Ye(d(y),(se,Je)=>({name:se,fn:_e(ut=>[ue(O.$slots,se,We(at(ut)))])}))]),1040,["input-value","is-menu-open","onSetEmptyDate"]),(P(),De(Oa(O.teleport?Br:"div"),We(at(T.value)),{default:_e(()=>[ot(ta,{name:d(pe)(d(H)),css:d(g)&&!d(F).enabled},{default:_e(()=>[i.value?(P(),W("div",Qe({key:0,ref_key:"dpWrapMenuRef",ref:C},K.value,{class:{"dp--menu-wrapper":!d(F).enabled},style:d(F).enabled?void 0:d(re)}),[ot(Un,Qe({ref_key:"dpMenuRef",ref:m},O.$props,{"internal-model-value":d(o),"onUpdate:internalModelValue":ee[3]||(ee[3]=se=>Pn(o)?o.value=se:null),class:{[Ve.value]:!0,"dp--menu-wrapper":O.teleport},"open-on-top":d(H),"no-overlay-focus":s.value,collapse:S.value,"get-input-rect":L,"is-text-input-date":I.value,onClosePicker:rt,onSelectDate:st,onAutoApply:gt,onTimeUpdate:Ea,onFlowStep:ee[4]||(ee[4]=se=>O.$emit("flow-step",se)),onUpdateMonthYear:ee[5]||(ee[5]=se=>O.$emit("update-month-year",se)),onInvalidSelect:ee[6]||(ee[6]=se=>O.$emit("invalid-select",d(o))),onAutoApplyInvalid:ee[7]||(ee[7]=se=>O.$emit("invalid-select",se)),onInvalidFixedRange:ee[8]||(ee[8]=se=>O.$emit("invalid-fixed-range",se)),onRecalculatePosition:d(b),onTooltipOpen:ee[9]||(ee[9]=se=>O.$emit("tooltip-open",se)),onTooltipClose:ee[10]||(ee[10]=se=>O.$emit("tooltip-close",se)),onTimePickerOpen:ee[11]||(ee[11]=se=>O.$emit("time-picker-open",se)),onTimePickerClose:ee[12]||(ee[12]=se=>O.$emit("time-picker-close",se)),onAmPmChange:ee[13]||(ee[13]=se=>O.$emit("am-pm-change",se)),onRangeStart:ee[14]||(ee[14]=se=>O.$emit("range-start",se)),onRangeEnd:ee[15]||(ee[15]=se=>O.$emit("range-end",se)),onDateUpdate:ee[16]||(ee[16]=se=>O.$emit("date-update",se)),onInvalidDate:ee[17]||(ee[17]=se=>O.$emit("invalid-date",se)),onOverlayToggle:ee[18]||(ee[18]=se=>O.$emit("overlay-toggle",se))}),je({_:2},[Ye(d(D),(se,Je)=>({name:se,fn:_e(ut=>[ue(O.$slots,se,We(at({...ut})))])}))]),1040,["internal-model-value","class","open-on-top","no-overlay-focus","collapse","is-text-input-date","onRecalculatePosition"])],16)):j("",!0)]),_:3},8,["name","css"])]),_:3},16))],2))}}),Ir=(()=>{const e=zs;return e.install=t=>{t.component("Vue3DatePicker",e)},e})(),Us=Object.freeze(Object.defineProperty({__proto__:null,default:Ir},Symbol.toStringTag,{value:"Module"}));Object.entries(Us).forEach(([e,t])=>{e!=="default"&&(Ir[e]=t)});export{Ir as V}; +import{E as ha,r as Z,P as ze,a5 as qt,a6 as ca,o as Ke,Y as it,V as Ca,H as ct,q as G,a as P,c as W,d as ot,a7 as je,h as Ye,w as _e,a8 as ue,a9 as We,aa as at,u as d,ab as Qe,ac as Pn,i as De,j as ta,e as j,l as Oa,ad as Br,n as ke,b as ye,F as we,s as dt,a4 as va,t as Ge,R as Nr,ae as An,af as Lr,f as Dt,ag as Hr,m as Ma,ah as Da,C as Vr,K as Fr,L as qr}from"./index-AzYVPyhh.js";function ve(e){const t=Object.prototype.toString.call(e);return e instanceof Date||typeof e=="object"&&t==="[object Date]"?new e.constructor(+e):typeof e=="number"||t==="[object Number]"||typeof e=="string"||t==="[object String]"?new Date(e):new Date(NaN)}function Te(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}function mt(e,t){const n=ve(e);return isNaN(t)?Te(e,NaN):(t&&n.setDate(n.getDate()+t),n)}function ft(e,t){const n=ve(e);if(isNaN(t))return Te(e,NaN);if(!t)return n;const a=n.getDate(),r=Te(e,n.getTime());r.setMonth(n.getMonth()+t+1,0);const l=r.getDate();return a>=l?r:(n.setFullYear(r.getFullYear(),r.getMonth(),a),n)}function Xn(e,t){const{years:n=0,months:a=0,weeks:r=0,days:l=0,hours:i=0,minutes:p=0,seconds:c=0}=t,C=ve(e),m=a||n?ft(C,a+n*12):C,v=l||r?mt(m,l+r*7):m,h=p+i*60,Y=(c+h*60)*1e3;return Te(e,v.getTime()+Y)}function Wr(e,t){const n=+ve(e);return Te(e,n+t)}const Gn=6048e5,Qr=864e5,zr=6e4,jn=36e5,Ur=1e3;function Xr(e,t){return Wr(e,t*jn)}let Gr={};function Wt(){return Gr}function ht(e,t){const n=Wt(),a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,r=ve(e),l=r.getDay(),i=(l=r.getTime()?n+1:t.getTime()>=i.getTime()?n:n-1}function Cn(e){const t=ve(e);return t.setHours(0,0,0,0),t}function Ta(e){const t=ve(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function Jn(e,t){const n=Cn(e),a=Cn(t),r=+n-Ta(n),l=+a-Ta(a);return Math.round((r-l)/Qr)}function jr(e){const t=Kn(e),n=Te(e,0);return n.setFullYear(t,0,4),n.setHours(0,0,0,0),Gt(n)}function Kr(e,t){const n=t*3;return ft(e,n)}function un(e,t){return ft(e,t*12)}function On(e,t){const n=ve(e),a=ve(t),r=n.getTime()-a.getTime();return r<0?-1:r>0?1:r}function Zn(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function ua(e){if(!Zn(e)&&typeof e!="number")return!1;const t=ve(e);return!isNaN(Number(t))}function $n(e){const t=ve(e);return Math.trunc(t.getMonth()/3)+1}function Jr(e,t){const n=ve(e),a=ve(t);return n.getFullYear()-a.getFullYear()}function Zr(e,t){const n=ve(e),a=ve(t),r=On(n,a),l=Math.abs(Jr(n,a));n.setFullYear(1584),a.setFullYear(1584);const i=On(n,a)===-r,p=r*(l-+i);return p===0?0:p}function er(e,t){const n=ve(e.start),a=ve(e.end);let r=+n>+a;const l=r?+n:+a,i=r?a:n;i.setHours(0,0,0,0);let p=1;const c=[];for(;+i<=l;)c.push(ve(i)),i.setDate(i.getDate()+p),i.setHours(0,0,0,0);return r?c.reverse():c}function Ht(e){const t=ve(e),n=t.getMonth(),a=n-n%3;return t.setMonth(a,1),t.setHours(0,0,0,0),t}function el(e,t){const n=ve(e.start),a=ve(e.end);let r=+n>+a;const l=r?+Ht(n):+Ht(a);let i=Ht(r?a:n),p=1;const c=[];for(;+i<=l;)c.push(ve(i)),i=Kr(i,p);return r?c.reverse():c}function tl(e){const t=ve(e);return t.setDate(1),t.setHours(0,0,0,0),t}function tr(e){const t=ve(e),n=t.getFullYear();return t.setFullYear(n+1,0,0),t.setHours(23,59,59,999),t}function ma(e){const t=ve(e),n=Te(e,0);return n.setFullYear(t.getFullYear(),0,1),n.setHours(0,0,0,0),n}function ar(e,t){const n=Wt(),a=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,r=ve(e),l=r.getDay(),i=(l{let a;const r=al[e];return typeof r=="string"?a=r:t===1?a=r.one:a=r.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+a:a+" ago":a};function Wa(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const rl={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},ll={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},ol={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},il={date:Wa({formats:rl,defaultWidth:"full"}),time:Wa({formats:ll,defaultWidth:"full"}),dateTime:Wa({formats:ol,defaultWidth:"full"})},sl={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},ul=(e,t,n,a)=>sl[e];function oa(e){return(t,n)=>{const a=n?.context?String(n.context):"standalone";let r;if(a==="formatting"&&e.formattingValues){const i=e.defaultFormattingWidth||e.defaultWidth,p=n?.width?String(n.width):i;r=e.formattingValues[p]||e.formattingValues[i]}else{const i=e.defaultWidth,p=n?.width?String(n.width):e.defaultWidth;r=e.values[p]||e.values[i]}const l=e.argumentCallback?e.argumentCallback(t):t;return r[l]}}const dl={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},cl={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},vl={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},ml={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},pl={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},fl={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},hl=(e,t)=>{const n=Number(e),a=n%100;if(a>20||a<10)switch(a%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},yl={ordinalNumber:hl,era:oa({values:dl,defaultWidth:"wide"}),quarter:oa({values:cl,defaultWidth:"wide",argumentCallback:e=>e-1}),month:oa({values:vl,defaultWidth:"wide"}),day:oa({values:ml,defaultWidth:"wide"}),dayPeriod:oa({values:pl,defaultWidth:"wide",formattingValues:fl,defaultFormattingWidth:"wide"})};function ia(e){return(t,n={})=>{const a=n.width,r=a&&e.matchPatterns[a]||e.matchPatterns[e.defaultMatchWidth],l=t.match(r);if(!l)return null;const i=l[0],p=a&&e.parsePatterns[a]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(p)?bl(p,v=>v.test(i)):gl(p,v=>v.test(i));let C;C=e.valueCallback?e.valueCallback(c):c,C=n.valueCallback?n.valueCallback(C):C;const m=t.slice(i.length);return{value:C,rest:m}}}function gl(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function bl(e,t){for(let n=0;n{const a=t.match(e.matchPattern);if(!a)return null;const r=a[0],l=t.match(e.parsePattern);if(!l)return null;let i=e.valueCallback?e.valueCallback(l[0]):l[0];i=n.valueCallback?n.valueCallback(i):i;const p=t.slice(r.length);return{value:i,rest:p}}}const _l=/^(\d+)(th|st|nd|rd)?/i,kl=/\d+/i,xl={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},Ml={any:[/^b/i,/^(a|c)/i]},Dl={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},Tl={any:[/1/i,/2/i,/3/i,/4/i]},Pl={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},Al={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},Cl={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},Ol={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},$l={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},Yl={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},Sl={ordinalNumber:wl({matchPattern:_l,parsePattern:kl,valueCallback:e=>parseInt(e,10)}),era:ia({matchPatterns:xl,defaultMatchWidth:"wide",parsePatterns:Ml,defaultParseWidth:"any"}),quarter:ia({matchPatterns:Dl,defaultMatchWidth:"wide",parsePatterns:Tl,defaultParseWidth:"any",valueCallback:e=>e+1}),month:ia({matchPatterns:Pl,defaultMatchWidth:"wide",parsePatterns:Al,defaultParseWidth:"any"}),day:ia({matchPatterns:Cl,defaultMatchWidth:"wide",parsePatterns:Ol,defaultParseWidth:"any"}),dayPeriod:ia({matchPatterns:$l,defaultMatchWidth:"any",parsePatterns:Yl,defaultParseWidth:"any"})},nr={code:"en-US",formatDistance:nl,formatLong:il,formatRelative:ul,localize:yl,match:Sl,options:{weekStartsOn:0,firstWeekContainsDate:1}};function Rl(e){const t=ve(e);return Jn(t,ma(t))+1}function dn(e){const t=ve(e),n=+Gt(t)-+jr(t);return Math.round(n/Gn)+1}function cn(e,t){const n=ve(e),a=n.getFullYear(),r=Wt(),l=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,i=Te(e,0);i.setFullYear(a+1,0,l),i.setHours(0,0,0,0);const p=ht(i,t),c=Te(e,0);c.setFullYear(a,0,l),c.setHours(0,0,0,0);const C=ht(c,t);return n.getTime()>=p.getTime()?a+1:n.getTime()>=C.getTime()?a:a-1}function Il(e,t){const n=Wt(),a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,r=cn(e,t),l=Te(e,0);return l.setFullYear(r,0,a),l.setHours(0,0,0,0),ht(l,t)}function vn(e,t){const n=ve(e),a=+ht(n,t)-+Il(n,t);return Math.round(a/Gn)+1}function Ae(e,t){const n=e<0?"-":"",a=Math.abs(e).toString().padStart(t,"0");return n+a}const Ct={y(e,t){const n=e.getFullYear(),a=n>0?n:1-n;return Ae(t==="yy"?a%100:a,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):Ae(n+1,2)},d(e,t){return Ae(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return n==="am"?"a.m.":"p.m."}},h(e,t){return Ae(e.getHours()%12||12,t.length)},H(e,t){return Ae(e.getHours(),t.length)},m(e,t){return Ae(e.getMinutes(),t.length)},s(e,t){return Ae(e.getSeconds(),t.length)},S(e,t){const n=t.length,a=e.getMilliseconds(),r=Math.trunc(a*Math.pow(10,n-3));return Ae(r,t.length)}},Qt={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},Sn={G:function(e,t,n){const a=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(a,{width:"abbreviated"});case"GGGGG":return n.era(a,{width:"narrow"});case"GGGG":default:return n.era(a,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const a=e.getFullYear(),r=a>0?a:1-a;return n.ordinalNumber(r,{unit:"year"})}return Ct.y(e,t)},Y:function(e,t,n,a){const r=cn(e,a),l=r>0?r:1-r;if(t==="YY"){const i=l%100;return Ae(i,2)}return t==="Yo"?n.ordinalNumber(l,{unit:"year"}):Ae(l,t.length)},R:function(e,t){const n=Kn(e);return Ae(n,t.length)},u:function(e,t){const n=e.getFullYear();return Ae(n,t.length)},Q:function(e,t,n){const a=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(a);case"QQ":return Ae(a,2);case"Qo":return n.ordinalNumber(a,{unit:"quarter"});case"QQQ":return n.quarter(a,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(a,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(a,{width:"wide",context:"formatting"})}},q:function(e,t,n){const a=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(a);case"qq":return Ae(a,2);case"qo":return n.ordinalNumber(a,{unit:"quarter"});case"qqq":return n.quarter(a,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(a,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(a,{width:"wide",context:"standalone"})}},M:function(e,t,n){const a=e.getMonth();switch(t){case"M":case"MM":return Ct.M(e,t);case"Mo":return n.ordinalNumber(a+1,{unit:"month"});case"MMM":return n.month(a,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(a,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(a,{width:"wide",context:"formatting"})}},L:function(e,t,n){const a=e.getMonth();switch(t){case"L":return String(a+1);case"LL":return Ae(a+1,2);case"Lo":return n.ordinalNumber(a+1,{unit:"month"});case"LLL":return n.month(a,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(a,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(a,{width:"wide",context:"standalone"})}},w:function(e,t,n,a){const r=vn(e,a);return t==="wo"?n.ordinalNumber(r,{unit:"week"}):Ae(r,t.length)},I:function(e,t,n){const a=dn(e);return t==="Io"?n.ordinalNumber(a,{unit:"week"}):Ae(a,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):Ct.d(e,t)},D:function(e,t,n){const a=Rl(e);return t==="Do"?n.ordinalNumber(a,{unit:"dayOfYear"}):Ae(a,t.length)},E:function(e,t,n){const a=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(a,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(a,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(a,{width:"short",context:"formatting"});case"EEEE":default:return n.day(a,{width:"wide",context:"formatting"})}},e:function(e,t,n,a){const r=e.getDay(),l=(r-a.weekStartsOn+8)%7||7;switch(t){case"e":return String(l);case"ee":return Ae(l,2);case"eo":return n.ordinalNumber(l,{unit:"day"});case"eee":return n.day(r,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(r,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(r,{width:"short",context:"formatting"});case"eeee":default:return n.day(r,{width:"wide",context:"formatting"})}},c:function(e,t,n,a){const r=e.getDay(),l=(r-a.weekStartsOn+8)%7||7;switch(t){case"c":return String(l);case"cc":return Ae(l,t.length);case"co":return n.ordinalNumber(l,{unit:"day"});case"ccc":return n.day(r,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(r,{width:"narrow",context:"standalone"});case"cccccc":return n.day(r,{width:"short",context:"standalone"});case"cccc":default:return n.day(r,{width:"wide",context:"standalone"})}},i:function(e,t,n){const a=e.getDay(),r=a===0?7:a;switch(t){case"i":return String(r);case"ii":return Ae(r,t.length);case"io":return n.ordinalNumber(r,{unit:"day"});case"iii":return n.day(a,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(a,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(a,{width:"short",context:"formatting"});case"iiii":default:return n.day(a,{width:"wide",context:"formatting"})}},a:function(e,t,n){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(e,t,n){const a=e.getHours();let r;switch(a===12?r=Qt.noon:a===0?r=Qt.midnight:r=a/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,n){const a=e.getHours();let r;switch(a>=17?r=Qt.evening:a>=12?r=Qt.afternoon:a>=4?r=Qt.morning:r=Qt.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let a=e.getHours()%12;return a===0&&(a=12),n.ordinalNumber(a,{unit:"hour"})}return Ct.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):Ct.H(e,t)},K:function(e,t,n){const a=e.getHours()%12;return t==="Ko"?n.ordinalNumber(a,{unit:"hour"}):Ae(a,t.length)},k:function(e,t,n){let a=e.getHours();return a===0&&(a=24),t==="ko"?n.ordinalNumber(a,{unit:"hour"}):Ae(a,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):Ct.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):Ct.s(e,t)},S:function(e,t){return Ct.S(e,t)},X:function(e,t,n){const a=e.getTimezoneOffset();if(a===0)return"Z";switch(t){case"X":return In(a);case"XXXX":case"XX":return Nt(a);case"XXXXX":case"XXX":default:return Nt(a,":")}},x:function(e,t,n){const a=e.getTimezoneOffset();switch(t){case"x":return In(a);case"xxxx":case"xx":return Nt(a);case"xxxxx":case"xxx":default:return Nt(a,":")}},O:function(e,t,n){const a=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Rn(a,":");case"OOOO":default:return"GMT"+Nt(a,":")}},z:function(e,t,n){const a=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Rn(a,":");case"zzzz":default:return"GMT"+Nt(a,":")}},t:function(e,t,n){const a=Math.trunc(e.getTime()/1e3);return Ae(a,t.length)},T:function(e,t,n){const a=e.getTime();return Ae(a,t.length)}};function Rn(e,t=""){const n=e>0?"-":"+",a=Math.abs(e),r=Math.trunc(a/60),l=a%60;return l===0?n+String(r):n+String(r)+t+Ae(l,2)}function In(e,t){return e%60===0?(e>0?"-":"+")+Ae(Math.abs(e)/60,2):Nt(e,t)}function Nt(e,t=""){const n=e>0?"-":"+",a=Math.abs(e),r=Ae(Math.trunc(a/60),2),l=Ae(a%60,2);return n+r+t+l}const En=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},rr=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},El=(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],a=n[1],r=n[2];if(!r)return En(e,t);let l;switch(a){case"P":l=t.dateTime({width:"short"});break;case"PP":l=t.dateTime({width:"medium"});break;case"PPP":l=t.dateTime({width:"long"});break;case"PPPP":default:l=t.dateTime({width:"full"});break}return l.replace("{{date}}",En(a,t)).replace("{{time}}",rr(r,t))},an={p:rr,P:El},Bl=/^D+$/,Nl=/^Y+$/,Ll=["D","DD","YY","YYYY"];function lr(e){return Bl.test(e)}function or(e){return Nl.test(e)}function nn(e,t,n){const a=Hl(e,t,n);if(console.warn(a),Ll.includes(e))throw new RangeError(a)}function Hl(e,t,n){const a=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${a} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const Vl=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Fl=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,ql=/^'([^]*?)'?$/,Wl=/''/g,Ql=/[a-zA-Z]/;function kt(e,t,n){const a=Wt(),r=n?.locale??a.locale??nr,l=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??a.firstWeekContainsDate??a.locale?.options?.firstWeekContainsDate??1,i=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??a.weekStartsOn??a.locale?.options?.weekStartsOn??0,p=ve(e);if(!ua(p))throw new RangeError("Invalid time value");let c=t.match(Fl).map(m=>{const v=m[0];if(v==="p"||v==="P"){const h=an[v];return h(m,r.formatLong)}return m}).join("").match(Vl).map(m=>{if(m==="''")return{isToken:!1,value:"'"};const v=m[0];if(v==="'")return{isToken:!1,value:zl(m)};if(Sn[v])return{isToken:!0,value:m};if(v.match(Ql))throw new RangeError("Format string contains an unescaped latin alphabet character `"+v+"`");return{isToken:!1,value:m}});r.localize.preprocessor&&(c=r.localize.preprocessor(p,c));const C={firstWeekContainsDate:l,weekStartsOn:i,locale:r};return c.map(m=>{if(!m.isToken)return m.value;const v=m.value;(!n?.useAdditionalWeekYearTokens&&or(v)||!n?.useAdditionalDayOfYearTokens&&lr(v))&&nn(v,t,String(e));const h=Sn[v[0]];return h(p,v,r.localize,C)}).join("")}function zl(e){const t=e.match(ql);return t?t[1].replace(Wl,"'"):e}function Ul(e){return ve(e).getDay()}function Xl(e){const t=ve(e),n=t.getFullYear(),a=t.getMonth(),r=Te(e,0);return r.setFullYear(n,a+1,0),r.setHours(0,0,0,0),r.getDate()}function Gl(){return Object.assign({},Wt())}function Tt(e){return ve(e).getHours()}function jl(e){let n=ve(e).getDay();return n===0&&(n=7),n}function Rt(e){return ve(e).getMinutes()}function xe(e){return ve(e).getMonth()}function jt(e){return ve(e).getSeconds()}function he(e){return ve(e).getFullYear()}function Kt(e,t){const n=ve(e),a=ve(t);return n.getTime()>a.getTime()}function pa(e,t){const n=ve(e),a=ve(t);return+n<+a}function Xt(e,t){const n=ve(e),a=ve(t);return+n==+a}function Kl(e,t){const n=t instanceof Date?Te(t,0):new t(0);return n.setFullYear(e.getFullYear(),e.getMonth(),e.getDate()),n.setHours(e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()),n}const Jl=10;class ir{subPriority=0;validate(t,n){return!0}}class Zl extends ir{constructor(t,n,a,r,l){super(),this.value=t,this.validateValue=n,this.setValue=a,this.priority=r,l&&(this.subPriority=l)}validate(t,n){return this.validateValue(t,this.value,n)}set(t,n,a){return this.setValue(t,n,this.value,a)}}class eo extends ir{priority=Jl;subPriority=-1;set(t,n){return n.timestampIsSet?t:Te(t,Kl(t,Date))}}class Pe{run(t,n,a,r){const l=this.parse(t,n,a,r);return l?{setter:new Zl(l.value,this.validate,this.set,this.priority,this.subPriority),rest:l.rest}:null}validate(t,n,a){return!0}}class to extends Pe{priority=140;parse(t,n,a){switch(n){case"G":case"GG":case"GGG":return a.era(t,{width:"abbreviated"})||a.era(t,{width:"narrow"});case"GGGGG":return a.era(t,{width:"narrow"});case"GGGG":default:return a.era(t,{width:"wide"})||a.era(t,{width:"abbreviated"})||a.era(t,{width:"narrow"})}}set(t,n,a){return n.era=a,t.setFullYear(a,0,1),t.setHours(0,0,0,0),t}incompatibleTokens=["R","u","t","T"]}const Le={month:/^(1[0-2]|0?\d)/,date:/^(3[0-1]|[0-2]?\d)/,dayOfYear:/^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,week:/^(5[0-3]|[0-4]?\d)/,hour23h:/^(2[0-3]|[0-1]?\d)/,hour24h:/^(2[0-4]|[0-1]?\d)/,hour11h:/^(1[0-1]|0?\d)/,hour12h:/^(1[0-2]|0?\d)/,minute:/^[0-5]?\d/,second:/^[0-5]?\d/,singleDigit:/^\d/,twoDigits:/^\d{1,2}/,threeDigits:/^\d{1,3}/,fourDigits:/^\d{1,4}/,anyDigitsSigned:/^-?\d+/,singleDigitSigned:/^-?\d/,twoDigitsSigned:/^-?\d{1,2}/,threeDigitsSigned:/^-?\d{1,3}/,fourDigitsSigned:/^-?\d{1,4}/},bt={basicOptionalMinutes:/^([+-])(\d{2})(\d{2})?|Z/,basic:/^([+-])(\d{2})(\d{2})|Z/,basicOptionalSeconds:/^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,extended:/^([+-])(\d{2}):(\d{2})|Z/,extendedOptionalSeconds:/^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/};function He(e,t){return e&&{value:t(e.value),rest:e.rest}}function Re(e,t){const n=t.match(e);return n?{value:parseInt(n[0],10),rest:t.slice(n[0].length)}:null}function wt(e,t){const n=t.match(e);if(!n)return null;if(n[0]==="Z")return{value:0,rest:t.slice(1)};const a=n[1]==="+"?1:-1,r=n[2]?parseInt(n[2],10):0,l=n[3]?parseInt(n[3],10):0,i=n[5]?parseInt(n[5],10):0;return{value:a*(r*jn+l*zr+i*Ur),rest:t.slice(n[0].length)}}function sr(e){return Re(Le.anyDigitsSigned,e)}function Ee(e,t){switch(e){case 1:return Re(Le.singleDigit,t);case 2:return Re(Le.twoDigits,t);case 3:return Re(Le.threeDigits,t);case 4:return Re(Le.fourDigits,t);default:return Re(new RegExp("^\\d{1,"+e+"}"),t)}}function Pa(e,t){switch(e){case 1:return Re(Le.singleDigitSigned,t);case 2:return Re(Le.twoDigitsSigned,t);case 3:return Re(Le.threeDigitsSigned,t);case 4:return Re(Le.fourDigitsSigned,t);default:return Re(new RegExp("^-?\\d{1,"+e+"}"),t)}}function mn(e){switch(e){case"morning":return 4;case"evening":return 17;case"pm":case"noon":case"afternoon":return 12;case"am":case"midnight":case"night":default:return 0}}function ur(e,t){const n=t>0,a=n?t:1-t;let r;if(a<=50)r=e||100;else{const l=a+50,i=Math.trunc(l/100)*100,p=e>=l%100;r=e+i-(p?100:0)}return n?r:1-r}function dr(e){return e%400===0||e%4===0&&e%100!==0}class ao extends Pe{priority=130;incompatibleTokens=["Y","R","u","w","I","i","e","c","t","T"];parse(t,n,a){const r=l=>({year:l,isTwoDigitYear:n==="yy"});switch(n){case"y":return He(Ee(4,t),r);case"yo":return He(a.ordinalNumber(t,{unit:"year"}),r);default:return He(Ee(n.length,t),r)}}validate(t,n){return n.isTwoDigitYear||n.year>0}set(t,n,a){const r=t.getFullYear();if(a.isTwoDigitYear){const i=ur(a.year,r);return t.setFullYear(i,0,1),t.setHours(0,0,0,0),t}const l=!("era"in n)||n.era===1?a.year:1-a.year;return t.setFullYear(l,0,1),t.setHours(0,0,0,0),t}}class no extends Pe{priority=130;parse(t,n,a){const r=l=>({year:l,isTwoDigitYear:n==="YY"});switch(n){case"Y":return He(Ee(4,t),r);case"Yo":return He(a.ordinalNumber(t,{unit:"year"}),r);default:return He(Ee(n.length,t),r)}}validate(t,n){return n.isTwoDigitYear||n.year>0}set(t,n,a,r){const l=cn(t,r);if(a.isTwoDigitYear){const p=ur(a.year,l);return t.setFullYear(p,0,r.firstWeekContainsDate),t.setHours(0,0,0,0),ht(t,r)}const i=!("era"in n)||n.era===1?a.year:1-a.year;return t.setFullYear(i,0,r.firstWeekContainsDate),t.setHours(0,0,0,0),ht(t,r)}incompatibleTokens=["y","R","u","Q","q","M","L","I","d","D","i","t","T"]}class ro extends Pe{priority=130;parse(t,n){return Pa(n==="R"?4:n.length,t)}set(t,n,a){const r=Te(t,0);return r.setFullYear(a,0,4),r.setHours(0,0,0,0),Gt(r)}incompatibleTokens=["G","y","Y","u","Q","q","M","L","w","d","D","e","c","t","T"]}class lo extends Pe{priority=130;parse(t,n){return Pa(n==="u"?4:n.length,t)}set(t,n,a){return t.setFullYear(a,0,1),t.setHours(0,0,0,0),t}incompatibleTokens=["G","y","Y","R","w","I","i","e","c","t","T"]}class oo extends Pe{priority=120;parse(t,n,a){switch(n){case"Q":case"QQ":return Ee(n.length,t);case"Qo":return a.ordinalNumber(t,{unit:"quarter"});case"QQQ":return a.quarter(t,{width:"abbreviated",context:"formatting"})||a.quarter(t,{width:"narrow",context:"formatting"});case"QQQQQ":return a.quarter(t,{width:"narrow",context:"formatting"});case"QQQQ":default:return a.quarter(t,{width:"wide",context:"formatting"})||a.quarter(t,{width:"abbreviated",context:"formatting"})||a.quarter(t,{width:"narrow",context:"formatting"})}}validate(t,n){return n>=1&&n<=4}set(t,n,a){return t.setMonth((a-1)*3,1),t.setHours(0,0,0,0),t}incompatibleTokens=["Y","R","q","M","L","w","I","d","D","i","e","c","t","T"]}class io extends Pe{priority=120;parse(t,n,a){switch(n){case"q":case"qq":return Ee(n.length,t);case"qo":return a.ordinalNumber(t,{unit:"quarter"});case"qqq":return a.quarter(t,{width:"abbreviated",context:"standalone"})||a.quarter(t,{width:"narrow",context:"standalone"});case"qqqqq":return a.quarter(t,{width:"narrow",context:"standalone"});case"qqqq":default:return a.quarter(t,{width:"wide",context:"standalone"})||a.quarter(t,{width:"abbreviated",context:"standalone"})||a.quarter(t,{width:"narrow",context:"standalone"})}}validate(t,n){return n>=1&&n<=4}set(t,n,a){return t.setMonth((a-1)*3,1),t.setHours(0,0,0,0),t}incompatibleTokens=["Y","R","Q","M","L","w","I","d","D","i","e","c","t","T"]}class so extends Pe{incompatibleTokens=["Y","R","q","Q","L","w","I","D","i","e","c","t","T"];priority=110;parse(t,n,a){const r=l=>l-1;switch(n){case"M":return He(Re(Le.month,t),r);case"MM":return He(Ee(2,t),r);case"Mo":return He(a.ordinalNumber(t,{unit:"month"}),r);case"MMM":return a.month(t,{width:"abbreviated",context:"formatting"})||a.month(t,{width:"narrow",context:"formatting"});case"MMMMM":return a.month(t,{width:"narrow",context:"formatting"});case"MMMM":default:return a.month(t,{width:"wide",context:"formatting"})||a.month(t,{width:"abbreviated",context:"formatting"})||a.month(t,{width:"narrow",context:"formatting"})}}validate(t,n){return n>=0&&n<=11}set(t,n,a){return t.setMonth(a,1),t.setHours(0,0,0,0),t}}class uo extends Pe{priority=110;parse(t,n,a){const r=l=>l-1;switch(n){case"L":return He(Re(Le.month,t),r);case"LL":return He(Ee(2,t),r);case"Lo":return He(a.ordinalNumber(t,{unit:"month"}),r);case"LLL":return a.month(t,{width:"abbreviated",context:"standalone"})||a.month(t,{width:"narrow",context:"standalone"});case"LLLLL":return a.month(t,{width:"narrow",context:"standalone"});case"LLLL":default:return a.month(t,{width:"wide",context:"standalone"})||a.month(t,{width:"abbreviated",context:"standalone"})||a.month(t,{width:"narrow",context:"standalone"})}}validate(t,n){return n>=0&&n<=11}set(t,n,a){return t.setMonth(a,1),t.setHours(0,0,0,0),t}incompatibleTokens=["Y","R","q","Q","M","w","I","D","i","e","c","t","T"]}function co(e,t,n){const a=ve(e),r=vn(a,n)-t;return a.setDate(a.getDate()-r*7),a}class vo extends Pe{priority=100;parse(t,n,a){switch(n){case"w":return Re(Le.week,t);case"wo":return a.ordinalNumber(t,{unit:"week"});default:return Ee(n.length,t)}}validate(t,n){return n>=1&&n<=53}set(t,n,a,r){return ht(co(t,a,r),r)}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","i","t","T"]}function mo(e,t){const n=ve(e),a=dn(n)-t;return n.setDate(n.getDate()-a*7),n}class po extends Pe{priority=100;parse(t,n,a){switch(n){case"I":return Re(Le.week,t);case"Io":return a.ordinalNumber(t,{unit:"week"});default:return Ee(n.length,t)}}validate(t,n){return n>=1&&n<=53}set(t,n,a){return Gt(mo(t,a))}incompatibleTokens=["y","Y","u","q","Q","M","L","w","d","D","e","c","t","T"]}const fo=[31,28,31,30,31,30,31,31,30,31,30,31],ho=[31,29,31,30,31,30,31,31,30,31,30,31];class yo extends Pe{priority=90;subPriority=1;parse(t,n,a){switch(n){case"d":return Re(Le.date,t);case"do":return a.ordinalNumber(t,{unit:"date"});default:return Ee(n.length,t)}}validate(t,n){const a=t.getFullYear(),r=dr(a),l=t.getMonth();return r?n>=1&&n<=ho[l]:n>=1&&n<=fo[l]}set(t,n,a){return t.setDate(a),t.setHours(0,0,0,0),t}incompatibleTokens=["Y","R","q","Q","w","I","D","i","e","c","t","T"]}class go extends Pe{priority=90;subpriority=1;parse(t,n,a){switch(n){case"D":case"DD":return Re(Le.dayOfYear,t);case"Do":return a.ordinalNumber(t,{unit:"date"});default:return Ee(n.length,t)}}validate(t,n){const a=t.getFullYear();return dr(a)?n>=1&&n<=366:n>=1&&n<=365}set(t,n,a){return t.setMonth(0,a),t.setHours(0,0,0,0),t}incompatibleTokens=["Y","R","q","Q","M","L","w","I","d","E","i","e","c","t","T"]}function pn(e,t,n){const a=Wt(),r=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??a.weekStartsOn??a.locale?.options?.weekStartsOn??0,l=ve(e),i=l.getDay(),c=(t%7+7)%7,C=7-r,m=t<0||t>6?t-(i+C)%7:(c+C)%7-(i+C)%7;return mt(l,m)}class bo extends Pe{priority=90;parse(t,n,a){switch(n){case"E":case"EE":case"EEE":return a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"});case"EEEEE":return a.day(t,{width:"narrow",context:"formatting"});case"EEEEEE":return a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"});case"EEEE":default:return a.day(t,{width:"wide",context:"formatting"})||a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"})}}validate(t,n){return n>=0&&n<=6}set(t,n,a,r){return t=pn(t,a,r),t.setHours(0,0,0,0),t}incompatibleTokens=["D","i","e","c","t","T"]}class wo extends Pe{priority=90;parse(t,n,a,r){const l=i=>{const p=Math.floor((i-1)/7)*7;return(i+r.weekStartsOn+6)%7+p};switch(n){case"e":case"ee":return He(Ee(n.length,t),l);case"eo":return He(a.ordinalNumber(t,{unit:"day"}),l);case"eee":return a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"});case"eeeee":return a.day(t,{width:"narrow",context:"formatting"});case"eeeeee":return a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"});case"eeee":default:return a.day(t,{width:"wide",context:"formatting"})||a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"})}}validate(t,n){return n>=0&&n<=6}set(t,n,a,r){return t=pn(t,a,r),t.setHours(0,0,0,0),t}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","E","i","c","t","T"]}class _o extends Pe{priority=90;parse(t,n,a,r){const l=i=>{const p=Math.floor((i-1)/7)*7;return(i+r.weekStartsOn+6)%7+p};switch(n){case"c":case"cc":return He(Ee(n.length,t),l);case"co":return He(a.ordinalNumber(t,{unit:"day"}),l);case"ccc":return a.day(t,{width:"abbreviated",context:"standalone"})||a.day(t,{width:"short",context:"standalone"})||a.day(t,{width:"narrow",context:"standalone"});case"ccccc":return a.day(t,{width:"narrow",context:"standalone"});case"cccccc":return a.day(t,{width:"short",context:"standalone"})||a.day(t,{width:"narrow",context:"standalone"});case"cccc":default:return a.day(t,{width:"wide",context:"standalone"})||a.day(t,{width:"abbreviated",context:"standalone"})||a.day(t,{width:"short",context:"standalone"})||a.day(t,{width:"narrow",context:"standalone"})}}validate(t,n){return n>=0&&n<=6}set(t,n,a,r){return t=pn(t,a,r),t.setHours(0,0,0,0),t}incompatibleTokens=["y","R","u","q","Q","M","L","I","d","D","E","i","e","t","T"]}function ko(e,t){const n=ve(e),a=jl(n),r=t-a;return mt(n,r)}class xo extends Pe{priority=90;parse(t,n,a){const r=l=>l===0?7:l;switch(n){case"i":case"ii":return Ee(n.length,t);case"io":return a.ordinalNumber(t,{unit:"day"});case"iii":return He(a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"}),r);case"iiiii":return He(a.day(t,{width:"narrow",context:"formatting"}),r);case"iiiiii":return He(a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"}),r);case"iiii":default:return He(a.day(t,{width:"wide",context:"formatting"})||a.day(t,{width:"abbreviated",context:"formatting"})||a.day(t,{width:"short",context:"formatting"})||a.day(t,{width:"narrow",context:"formatting"}),r)}}validate(t,n){return n>=1&&n<=7}set(t,n,a){return t=ko(t,a),t.setHours(0,0,0,0),t}incompatibleTokens=["y","Y","u","q","Q","M","L","w","d","D","E","e","c","t","T"]}class Mo extends Pe{priority=80;parse(t,n,a){switch(n){case"a":case"aa":case"aaa":return a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"});case"aaaaa":return a.dayPeriod(t,{width:"narrow",context:"formatting"});case"aaaa":default:return a.dayPeriod(t,{width:"wide",context:"formatting"})||a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"})}}set(t,n,a){return t.setHours(mn(a),0,0,0),t}incompatibleTokens=["b","B","H","k","t","T"]}class Do extends Pe{priority=80;parse(t,n,a){switch(n){case"b":case"bb":case"bbb":return a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"});case"bbbbb":return a.dayPeriod(t,{width:"narrow",context:"formatting"});case"bbbb":default:return a.dayPeriod(t,{width:"wide",context:"formatting"})||a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"})}}set(t,n,a){return t.setHours(mn(a),0,0,0),t}incompatibleTokens=["a","B","H","k","t","T"]}class To extends Pe{priority=80;parse(t,n,a){switch(n){case"B":case"BB":case"BBB":return a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"});case"BBBBB":return a.dayPeriod(t,{width:"narrow",context:"formatting"});case"BBBB":default:return a.dayPeriod(t,{width:"wide",context:"formatting"})||a.dayPeriod(t,{width:"abbreviated",context:"formatting"})||a.dayPeriod(t,{width:"narrow",context:"formatting"})}}set(t,n,a){return t.setHours(mn(a),0,0,0),t}incompatibleTokens=["a","b","t","T"]}class Po extends Pe{priority=70;parse(t,n,a){switch(n){case"h":return Re(Le.hour12h,t);case"ho":return a.ordinalNumber(t,{unit:"hour"});default:return Ee(n.length,t)}}validate(t,n){return n>=1&&n<=12}set(t,n,a){const r=t.getHours()>=12;return r&&a<12?t.setHours(a+12,0,0,0):!r&&a===12?t.setHours(0,0,0,0):t.setHours(a,0,0,0),t}incompatibleTokens=["H","K","k","t","T"]}class Ao extends Pe{priority=70;parse(t,n,a){switch(n){case"H":return Re(Le.hour23h,t);case"Ho":return a.ordinalNumber(t,{unit:"hour"});default:return Ee(n.length,t)}}validate(t,n){return n>=0&&n<=23}set(t,n,a){return t.setHours(a,0,0,0),t}incompatibleTokens=["a","b","h","K","k","t","T"]}class Co extends Pe{priority=70;parse(t,n,a){switch(n){case"K":return Re(Le.hour11h,t);case"Ko":return a.ordinalNumber(t,{unit:"hour"});default:return Ee(n.length,t)}}validate(t,n){return n>=0&&n<=11}set(t,n,a){return t.getHours()>=12&&a<12?t.setHours(a+12,0,0,0):t.setHours(a,0,0,0),t}incompatibleTokens=["h","H","k","t","T"]}class Oo extends Pe{priority=70;parse(t,n,a){switch(n){case"k":return Re(Le.hour24h,t);case"ko":return a.ordinalNumber(t,{unit:"hour"});default:return Ee(n.length,t)}}validate(t,n){return n>=1&&n<=24}set(t,n,a){const r=a<=24?a%24:a;return t.setHours(r,0,0,0),t}incompatibleTokens=["a","b","h","H","K","t","T"]}class $o extends Pe{priority=60;parse(t,n,a){switch(n){case"m":return Re(Le.minute,t);case"mo":return a.ordinalNumber(t,{unit:"minute"});default:return Ee(n.length,t)}}validate(t,n){return n>=0&&n<=59}set(t,n,a){return t.setMinutes(a,0,0),t}incompatibleTokens=["t","T"]}class Yo extends Pe{priority=50;parse(t,n,a){switch(n){case"s":return Re(Le.second,t);case"so":return a.ordinalNumber(t,{unit:"second"});default:return Ee(n.length,t)}}validate(t,n){return n>=0&&n<=59}set(t,n,a){return t.setSeconds(a,0),t}incompatibleTokens=["t","T"]}class So extends Pe{priority=30;parse(t,n){const a=r=>Math.trunc(r*Math.pow(10,-n.length+3));return He(Ee(n.length,t),a)}set(t,n,a){return t.setMilliseconds(a),t}incompatibleTokens=["t","T"]}class Ro extends Pe{priority=10;parse(t,n){switch(n){case"X":return wt(bt.basicOptionalMinutes,t);case"XX":return wt(bt.basic,t);case"XXXX":return wt(bt.basicOptionalSeconds,t);case"XXXXX":return wt(bt.extendedOptionalSeconds,t);case"XXX":default:return wt(bt.extended,t)}}set(t,n,a){return n.timestampIsSet?t:Te(t,t.getTime()-Ta(t)-a)}incompatibleTokens=["t","T","x"]}class Io extends Pe{priority=10;parse(t,n){switch(n){case"x":return wt(bt.basicOptionalMinutes,t);case"xx":return wt(bt.basic,t);case"xxxx":return wt(bt.basicOptionalSeconds,t);case"xxxxx":return wt(bt.extendedOptionalSeconds,t);case"xxx":default:return wt(bt.extended,t)}}set(t,n,a){return n.timestampIsSet?t:Te(t,t.getTime()-Ta(t)-a)}incompatibleTokens=["t","T","X"]}class Eo extends Pe{priority=40;parse(t){return sr(t)}set(t,n,a){return[Te(t,a*1e3),{timestampIsSet:!0}]}incompatibleTokens="*"}class Bo extends Pe{priority=20;parse(t){return sr(t)}set(t,n,a){return[Te(t,a),{timestampIsSet:!0}]}incompatibleTokens="*"}const No={G:new to,y:new ao,Y:new no,R:new ro,u:new lo,Q:new oo,q:new io,M:new so,L:new uo,w:new vo,I:new po,d:new yo,D:new go,E:new bo,e:new wo,c:new _o,i:new xo,a:new Mo,b:new Do,B:new To,h:new Po,H:new Ao,K:new Co,k:new Oo,m:new $o,s:new Yo,S:new So,X:new Ro,x:new Io,t:new Eo,T:new Bo},Lo=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Ho=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Vo=/^'([^]*?)'?$/,Fo=/''/g,qo=/\S/,Wo=/[a-zA-Z]/;function rn(e,t,n,a){const r=Gl(),l=a?.locale??r.locale??nr,i=a?.firstWeekContainsDate??a?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,p=a?.weekStartsOn??a?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0;if(t==="")return e===""?ve(n):Te(n,NaN);const c={firstWeekContainsDate:i,weekStartsOn:p,locale:l},C=[new eo],m=t.match(Ho).map(f=>{const S=f[0];if(S in an){const I=an[S];return I(f,l.formatLong)}return f}).join("").match(Lo),v=[];for(let f of m){!a?.useAdditionalWeekYearTokens&&or(f)&&nn(f,t,e),!a?.useAdditionalDayOfYearTokens&&lr(f)&&nn(f,t,e);const S=f[0],I=No[S];if(I){const{incompatibleTokens:U}=I;if(Array.isArray(U)){const q=v.find(ae=>U.includes(ae.token)||ae.token===S);if(q)throw new RangeError(`The format string mustn't contain \`${q.fullToken}\` and \`${f}\` at the same time`)}else if(I.incompatibleTokens==="*"&&v.length>0)throw new RangeError(`The format string mustn't contain \`${f}\` and any other token at the same time`);v.push({token:S,fullToken:f});const A=I.run(e,f,l.match,c);if(!A)return Te(n,NaN);C.push(A.setter),e=A.rest}else{if(S.match(Wo))throw new RangeError("Format string contains an unescaped latin alphabet character `"+S+"`");if(f==="''"?f="'":S==="'"&&(f=Qo(f)),e.indexOf(f)===0)e=e.slice(f.length);else return Te(n,NaN)}}if(e.length>0&&qo.test(e))return Te(n,NaN);const h=C.map(f=>f.priority).sort((f,S)=>S-f).filter((f,S,I)=>I.indexOf(f)===S).map(f=>C.filter(S=>S.priority===f).sort((S,I)=>I.subPriority-S.subPriority)).map(f=>f[0]);let k=ve(n);if(isNaN(k.getTime()))return Te(n,NaN);const Y={};for(const f of h){if(!f.validate(k,c))return Te(n,NaN);const S=f.set(k,Y,c);Array.isArray(S)?(k=S[0],Object.assign(Y,S[1])):k=S}return Te(n,k)}function Qo(e){return e.match(Vo)[1].replace(Fo,"'")}function Bn(e,t){const n=Ht(e),a=Ht(t);return+n==+a}function zo(e,t){return mt(e,-t)}function cr(e,t){const n=ve(e),a=n.getFullYear(),r=n.getDate(),l=Te(e,0);l.setFullYear(a,t,15),l.setHours(0,0,0,0);const i=Xl(l);return n.setMonth(t,Math.min(r,i)),n}function Ce(e,t){let n=ve(e);return isNaN(+n)?Te(e,NaN):(t.year!=null&&n.setFullYear(t.year),t.month!=null&&(n=cr(n,t.month)),t.date!=null&&n.setDate(t.date),t.hours!=null&&n.setHours(t.hours),t.minutes!=null&&n.setMinutes(t.minutes),t.seconds!=null&&n.setSeconds(t.seconds),t.milliseconds!=null&&n.setMilliseconds(t.milliseconds),n)}function Uo(e,t){const n=ve(e);return n.setHours(t),n}function vr(e,t){const n=ve(e);return n.setMilliseconds(t),n}function Xo(e,t){const n=ve(e);return n.setMinutes(t),n}function mr(e,t){const n=ve(e);return n.setSeconds(t),n}function _t(e,t){const n=ve(e);return isNaN(+n)?Te(e,NaN):(n.setFullYear(t),n)}function Jt(e,t){return ft(e,-t)}function Go(e,t){const{years:n=0,months:a=0,weeks:r=0,days:l=0,hours:i=0,minutes:p=0,seconds:c=0}=t,C=Jt(e,a+n*12),m=zo(C,l+r*7),v=p+i*60,k=(c+v*60)*1e3;return Te(e,m.getTime()-k)}function pr(e,t){return un(e,-t)}function aa(){const e=Lr();return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img",...e},[ye("path",{d:"M29.333 8c0-2.208-1.792-4-4-4h-18.667c-2.208 0-4 1.792-4 4v18.667c0 2.208 1.792 4 4 4h18.667c2.208 0 4-1.792 4-4v-18.667zM26.667 8v18.667c0 0.736-0.597 1.333-1.333 1.333 0 0-18.667 0-18.667 0-0.736 0-1.333-0.597-1.333-1.333 0 0 0-18.667 0-18.667 0-0.736 0.597-1.333 1.333-1.333 0 0 18.667 0 18.667 0 0.736 0 1.333 0.597 1.333 1.333z"}),ye("path",{d:"M20 2.667v5.333c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-5.333c0-0.736-0.597-1.333-1.333-1.333s-1.333 0.597-1.333 1.333z"}),ye("path",{d:"M9.333 2.667v5.333c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-5.333c0-0.736-0.597-1.333-1.333-1.333s-1.333 0.597-1.333 1.333z"}),ye("path",{d:"M4 14.667h24c0.736 0 1.333-0.597 1.333-1.333s-0.597-1.333-1.333-1.333h-24c-0.736 0-1.333 0.597-1.333 1.333s0.597 1.333 1.333 1.333z"})])}aa.compatConfig={MODE:3};function fr(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M23.057 7.057l-16 16c-0.52 0.52-0.52 1.365 0 1.885s1.365 0.52 1.885 0l16-16c0.52-0.52 0.52-1.365 0-1.885s-1.365-0.52-1.885 0z"}),ye("path",{d:"M7.057 8.943l16 16c0.52 0.52 1.365 0.52 1.885 0s0.52-1.365 0-1.885l-16-16c-0.52-0.52-1.365-0.52-1.885 0s-0.52 1.365 0 1.885z"})])}fr.compatConfig={MODE:3};function fn(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M20.943 23.057l-7.057-7.057c0 0 7.057-7.057 7.057-7.057 0.52-0.52 0.52-1.365 0-1.885s-1.365-0.52-1.885 0l-8 8c-0.521 0.521-0.521 1.365 0 1.885l8 8c0.52 0.52 1.365 0.52 1.885 0s0.52-1.365 0-1.885z"})])}fn.compatConfig={MODE:3};function hn(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M12.943 24.943l8-8c0.521-0.521 0.521-1.365 0-1.885l-8-8c-0.52-0.52-1.365-0.52-1.885 0s-0.52 1.365 0 1.885l7.057 7.057c0 0-7.057 7.057-7.057 7.057-0.52 0.52-0.52 1.365 0 1.885s1.365 0.52 1.885 0z"})])}hn.compatConfig={MODE:3};function yn(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M16 1.333c-8.095 0-14.667 6.572-14.667 14.667s6.572 14.667 14.667 14.667c8.095 0 14.667-6.572 14.667-14.667s-6.572-14.667-14.667-14.667zM16 4c6.623 0 12 5.377 12 12s-5.377 12-12 12c-6.623 0-12-5.377-12-12s5.377-12 12-12z"}),ye("path",{d:"M14.667 8v8c0 0.505 0.285 0.967 0.737 1.193l5.333 2.667c0.658 0.329 1.46 0.062 1.789-0.596s0.062-1.46-0.596-1.789l-4.596-2.298c0 0 0-7.176 0-7.176 0-0.736-0.597-1.333-1.333-1.333s-1.333 0.597-1.333 1.333z"})])}yn.compatConfig={MODE:3};function gn(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M24.943 19.057l-8-8c-0.521-0.521-1.365-0.521-1.885 0l-8 8c-0.52 0.52-0.52 1.365 0 1.885s1.365 0.52 1.885 0l7.057-7.057c0 0 7.057 7.057 7.057 7.057 0.52 0.52 1.365 0.52 1.885 0s0.52-1.365 0-1.885z"})])}gn.compatConfig={MODE:3};function bn(){return P(),W("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",fill:"currentColor","aria-hidden":"true",class:"dp__icon",role:"img"},[ye("path",{d:"M7.057 12.943l8 8c0.521 0.521 1.365 0.521 1.885 0l8-8c0.52-0.52 0.52-1.365 0-1.885s-1.365-0.52-1.885 0l-7.057 7.057c0 0-7.057-7.057-7.057-7.057-0.52-0.52-1.365-0.52-1.885 0s-0.52 1.365 0 1.885z"})])}bn.compatConfig={MODE:3};const nt=(e,t)=>t?new Date(e.toLocaleString("en-US",{timeZone:t})):new Date(e),wn=(e,t,n)=>ln(e,t,n)||Q(),jo=(e,t,n)=>{const a=t.dateInTz?nt(new Date(e),t.dateInTz):Q(e);return n?tt(a,!0):a},ln=(e,t,n)=>{if(!e)return null;const a=n?tt(Q(e),!0):Q(e);return t?t.exactMatch?jo(e,t,n):nt(a,t.timezone):a},Ko=e=>{if(!e)return 0;const t=new Date,n=new Date(t.toLocaleString("en-US",{timeZone:"UTC"})),a=new Date(t.toLocaleString("en-US",{timeZone:e})),r=a.getTimezoneOffset()/60;return(+n-+a)/(1e3*60*60)-r};var vt=(e=>(e.month="month",e.year="year",e))(vt||{}),Lt=(e=>(e.top="top",e.bottom="bottom",e))(Lt||{}),Vt=(e=>(e.header="header",e.calendar="calendar",e.timePicker="timePicker",e))(Vt||{}),Xe=(e=>(e.month="month",e.year="year",e.calendar="calendar",e.time="time",e.minutes="minutes",e.hours="hours",e.seconds="seconds",e))(Xe||{});const Jo=["timestamp","date","iso"];var Ze=(e=>(e.up="up",e.down="down",e.left="left",e.right="right",e))(Ze||{}),$e=(e=>(e.arrowUp="ArrowUp",e.arrowDown="ArrowDown",e.arrowLeft="ArrowLeft",e.arrowRight="ArrowRight",e.enter="Enter",e.space=" ",e.esc="Escape",e.tab="Tab",e.home="Home",e.end="End",e.pageUp="PageUp",e.pageDown="PageDown",e))($e||{});function Nn(e){return t=>new Intl.DateTimeFormat(e,{weekday:"short",timeZone:"UTC"}).format(new Date(`2017-01-0${t}T00:00:00+00:00`)).slice(0,2)}function Zo(e){return t=>kt(nt(new Date(`2017-01-0${t}T00:00:00+00:00`),"UTC"),"EEEEEE",{locale:e})}const ei=(e,t,n)=>{const a=[1,2,3,4,5,6,7];let r;if(e!==null)try{r=a.map(Zo(e))}catch{r=a.map(Nn(t))}else r=a.map(Nn(t));const l=r.slice(0,n),i=r.slice(n+1,r.length);return[r[n]].concat(...i).concat(...l)},_n=(e,t,n)=>{const a=[];for(let r=+e[0];r<=+e[1];r++)a.push({value:+r,text:br(r,t)});return n?a.reverse():a},hr=(e,t,n)=>{const a=[1,2,3,4,5,6,7,8,9,10,11,12].map(l=>{const i=l<10?`0${l}`:l;return new Date(`2017-${i}-01T00:00:00+00:00`)});if(e!==null)try{const l=n==="long"?"LLLL":"LLL";return a.map((i,p)=>{const c=kt(nt(i,"UTC"),l,{locale:e});return{text:c.charAt(0).toUpperCase()+c.substring(1),value:p}})}catch{}const r=new Intl.DateTimeFormat(t,{month:n,timeZone:"UTC"});return a.map((l,i)=>{const p=r.format(l);return{text:p.charAt(0).toUpperCase()+p.substring(1),value:i}})},ti=e=>[12,1,2,3,4,5,6,7,8,9,10,11,12,1,2,3,4,5,6,7,8,9,10,11][e],Fe=e=>{const t=d(e);return t!=null&&t.$el?t?.$el:t},ai=e=>({type:"dot",...e??{}}),yr=e=>Array.isArray(e)?!!e[0]&&!!e[1]:!1,kn={prop:e=>`"${e}" prop must be enabled!`,dateArr:e=>`You need to use array as "model-value" binding in order to support "${e}"`},qe=e=>e,Ln=e=>e===0?e:!e||isNaN(+e)?null:+e,Hn=e=>e===null,gr=e=>{if(e)return[...e.querySelectorAll("input, button, select, textarea, a[href]")][0]},ni=e=>{const t=[],n=a=>a.filter(r=>r);for(let a=0;a{const a=n!=null,r=t!=null;if(!a&&!r)return!1;const l=+n,i=+t;return a&&r?+e>l||+el:r?+eni(e).map(n=>n.map(a=>{const{active:r,disabled:l,isBetween:i,highlighted:p}=t(a);return{...a,active:r,disabled:l,className:{dp__overlay_cell_active:r,dp__overlay_cell:!r,dp__overlay_cell_disabled:l,dp__overlay_cell_pad:!0,dp__overlay_cell_active_disabled:l&&r,dp__cell_in_between:i,"dp--highlighted":p}}})),Yt=(e,t,n=!1)=>{e&&t.allowStopPropagation&&(n&&e.stopImmediatePropagation(),e.stopPropagation())},ri=()=>["a[href]","area[href]","input:not([disabled]):not([type='hidden'])","select:not([disabled])","textarea:not([disabled])","button:not([disabled])","[tabindex]:not([tabindex='-1'])","[data-datepicker-instance]"].join(", ");function li(e,t){let n=[...document.querySelectorAll(ri())];n=n.filter(r=>!e.contains(r)||r.hasAttribute("data-datepicker-instance"));const a=n.indexOf(e);if(a>=0&&(t?a-1>=0:a+1<=n.length))return n[a+(t?-1:1)]}const on=(e,t)=>e?.querySelector(`[data-dp-element="${t}"]`),br=(e,t)=>new Intl.NumberFormat(t,{useGrouping:!1,style:"decimal"}).format(e),xn=e=>kt(e,"dd-MM-yyyy"),Qa=e=>Array.isArray(e),Aa=(e,t)=>t.get(xn(e)),oi=(e,t)=>e?t?t instanceof Map?!!Aa(e,t):t(Q(e)):!1:!0,et=(e,t,n=!1,a)=>{if(e.key===$e.enter||e.key===$e.space)return n&&e.preventDefault(),t();if(a)return a(e)},Vn=()=>["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].some(e=>navigator.userAgent.includes(e))||navigator.userAgent.includes("Mac")&&"ontouchend"in document,Fn=(e,t,n,a,r,l)=>{const i=rn(e,t.slice(0,e.length),new Date,{locale:l});return ua(i)&&Zn(i)?a||r?i:Ce(i,{hours:+n.hours,minutes:+n?.minutes,seconds:+n?.seconds,milliseconds:0}):null},ii=(e,t,n,a,r,l)=>{const i=Array.isArray(n)?n[0]:n;if(typeof t=="string")return Fn(e,t,i,a,r,l);if(Array.isArray(t)){let p=null;for(const c of t)if(p=Fn(e,c,i,a,r,l),p)break;return p}return typeof t=="function"?t(e):null},Q=e=>e?new Date(e):new Date,si=(e,t,n)=>{if(t){const r=(e.getMonth()+1).toString().padStart(2,"0"),l=e.getDate().toString().padStart(2,"0"),i=e.getHours().toString().padStart(2,"0"),p=e.getMinutes().toString().padStart(2,"0"),c=n?e.getSeconds().toString().padStart(2,"0"):"00";return`${e.getFullYear()}-${r}-${l}T${i}:${p}:${c}.000Z`}const a=Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),e.getUTCHours(),e.getUTCMinutes(),e.getUTCSeconds());return new Date(a).toISOString()},tt=(e,t)=>{const n=Q(JSON.parse(JSON.stringify(e))),a=Ce(n,{hours:0,minutes:0,seconds:0,milliseconds:0});return t?tl(a):a},St=(e,t,n,a)=>{let r=e?Q(e):Q();return(t||t===0)&&(r=Uo(r,+t)),(n||n===0)&&(r=Xo(r,+n)),(a||a===0)&&(r=mr(r,+a)),vr(r,0)},Ie=(e,t)=>!e||!t?!1:pa(tt(e),tt(t)),Me=(e,t)=>!e||!t?!1:Xt(tt(e),tt(t)),Ne=(e,t)=>!e||!t?!1:Kt(tt(e),tt(t)),$a=(e,t,n)=>e!=null&&e[0]&&e!=null&&e[1]?Ne(n,e[0])&&Ie(n,e[1]):e!=null&&e[0]&&t?Ne(n,e[0])&&Ie(n,t)||Ie(n,e[0])&&Ne(n,t):!1,pt=e=>{const t=Ce(new Date(e),{date:1});return tt(t)},za=(e,t,n)=>t&&(n||n===0)?Object.fromEntries(["hours","minutes","seconds"].map(a=>a===t?[a,n]:[a,isNaN(+e[a])?void 0:+e[a]])):{hours:isNaN(+e.hours)?void 0:+e.hours,minutes:isNaN(+e.minutes)?void 0:+e.minutes,seconds:isNaN(+e.seconds)?void 0:+e.seconds},Ft=e=>({hours:Tt(e),minutes:Rt(e),seconds:jt(e)}),wr=(e,t)=>{if(t){const n=he(Q(t));if(n>e)return 12;if(n===e)return xe(Q(t))}},_r=(e,t)=>{if(t){const n=he(Q(t));return n{if(e)return he(Q(e))},kr=(e,t)=>{const n=Ne(e,t)?t:e,a=Ne(t,e)?t:e;return er({start:n,end:a})},ui=e=>{const t=ft(e,1);return{month:xe(t),year:he(t)}},xt=(e,t)=>{const n=ht(e,{weekStartsOn:+t}),a=ar(e,{weekStartsOn:+t});return[n,a]},xr=(e,t)=>{const n={hours:Tt(Q()),minutes:Rt(Q()),seconds:t?jt(Q()):0};return Object.assign(n,e)},$t=(e,t,n)=>[Ce(Q(e),{date:1}),Ce(Q(),{month:t,year:n,date:1})],Mt=(e,t,n)=>{let a=e?Q(e):Q();return(t||t===0)&&(a=cr(a,t)),n&&(a=_t(a,n)),a},Mr=(e,t,n,a,r)=>{if(!a||r&&!t||!r&&!n)return!1;const l=r?ft(e,1):Jt(e,1),i=[xe(l),he(l)];return r?!ci(...i,t):!di(...i,n)},di=(e,t,n)=>Ie(...$t(n,e,t))||Me(...$t(n,e,t)),ci=(e,t,n)=>Ne(...$t(n,e,t))||Me(...$t(n,e,t)),Dr=(e,t,n,a,r,l,i)=>{if(typeof t=="function"&&!i)return t(e);const p=n?{locale:n}:void 0;return Array.isArray(e)?`${kt(e[0],l,p)}${r&&!e[1]?"":a}${e[1]?kt(e[1],l,p):""}`:kt(e,l,p)},zt=e=>{if(e)return null;throw new Error(kn.prop("partial-range"))},ka=(e,t)=>{if(t)return e();throw new Error(kn.prop("range"))},sn=e=>Array.isArray(e)?ua(e[0])&&(e[1]?ua(e[1]):!0):e?ua(e):!1,vi=(e,t)=>Ce(t??Q(),{hours:+e.hours||0,minutes:+e.minutes||0,seconds:+e.seconds||0}),Ua=(e,t,n,a)=>{if(!e)return!0;if(a){const r=n==="max"?pa(e,t):Kt(e,t),l={seconds:0,milliseconds:0};return r||Xt(Ce(e,l),Ce(t,l))}return n==="max"?e.getTime()<=t.getTime():e.getTime()>=t.getTime()},Xa=(e,t,n)=>e?vi(e,t):Q(n??t),qn=(e,t,n,a,r)=>{if(Array.isArray(a)){const i=Xa(e,a[0],t),p=Xa(e,a[1],t);return Ua(a[0],i,n,!!t)&&Ua(a[1],p,n,!!t)&&r}const l=Xa(e,a,t);return Ua(a,l,n,!!t)&&r},Ga=e=>Ce(Q(),Ft(e)),mi=(e,t)=>e instanceof Map?Array.from(e.values()).filter(n=>he(Q(n))===t).map(n=>xe(n)):[],Tr=(e,t,n)=>typeof e=="function"?e({month:t,year:n}):!!e.months.find(a=>a.month===t&&a.year===n),Mn=(e,t)=>typeof e=="function"?e(t):e.years.includes(t),Pr=e=>kt(e,"yyyy-MM-dd"),sa=ha({menuFocused:!1,shiftKeyInMenu:!1}),Ar=()=>{const e=n=>{sa.menuFocused=n},t=n=>{sa.shiftKeyInMenu!==n&&(sa.shiftKeyInMenu=n)};return{control:G(()=>({shiftKeyInMenu:sa.shiftKeyInMenu,menuFocused:sa.menuFocused})),setMenuFocused:e,setShiftKey:t}},Oe=ha({monthYear:[],calendar:[],time:[],actionRow:[],selectionGrid:[],timePicker:{0:[],1:[]},monthPicker:[]}),ja=Z(null),xa=Z(!1),Ka=Z(!1),Ja=Z(!1),Za=Z(!1),Ue=Z(0),Be=Z(0),It=()=>{const e=G(()=>xa.value?[...Oe.selectionGrid,Oe.actionRow].filter(v=>v.length):Ka.value?[...Oe.timePicker[0],...Oe.timePicker[1],Za.value?[]:[ja.value],Oe.actionRow].filter(v=>v.length):Ja.value?[...Oe.monthPicker,Oe.actionRow]:[Oe.monthYear,...Oe.calendar,Oe.time,Oe.actionRow].filter(v=>v.length)),t=v=>{Ue.value=v?Ue.value+1:Ue.value-1;let h=null;e.value[Be.value]&&(h=e.value[Be.value][Ue.value]),!h&&e.value[Be.value+(v?1:-1)]?(Be.value=Be.value+(v?1:-1),Ue.value=v?0:e.value[Be.value].length-1):h||(Ue.value=v?Ue.value-1:Ue.value+1)},n=v=>{Be.value===0&&!v||Be.value===e.value.length&&v||(Be.value=v?Be.value+1:Be.value-1,e.value[Be.value]?e.value[Be.value]&&!e.value[Be.value][Ue.value]&&Ue.value!==0&&(Ue.value=e.value[Be.value].length-1):Be.value=v?Be.value-1:Be.value+1)},a=v=>{let h=null;e.value[Be.value]&&(h=e.value[Be.value][Ue.value]),h?h.focus({preventScroll:!xa.value}):Ue.value=v?Ue.value-1:Ue.value+1},r=()=>{t(!0),a(!0)},l=()=>{t(!1),a(!1)},i=()=>{n(!1),a(!0)},p=()=>{n(!0),a(!0)},c=(v,h)=>{Oe[h]=v},C=(v,h)=>{Oe[h]=v},m=()=>{Ue.value=0,Be.value=0};return{buildMatrix:c,buildMultiLevelMatrix:C,setTimePickerBackRef:v=>{ja.value=v},setSelectionGrid:v=>{xa.value=v,m(),v||(Oe.selectionGrid=[])},setTimePicker:(v,h=!1)=>{Ka.value=v,Za.value=h,m(),v||(Oe.timePicker[0]=[],Oe.timePicker[1]=[])},setTimePickerElements:(v,h=0)=>{Oe.timePicker[h]=v},arrowRight:r,arrowLeft:l,arrowUp:i,arrowDown:p,clearArrowNav:()=>{Oe.monthYear=[],Oe.calendar=[],Oe.time=[],Oe.actionRow=[],Oe.selectionGrid=[],Oe.timePicker[0]=[],Oe.timePicker[1]=[],xa.value=!1,Ka.value=!1,Za.value=!1,Ja.value=!1,m(),ja.value=null},setMonthPicker:v=>{Ja.value=v,m()},refSets:Oe}},Wn=e=>({menuAppearTop:"dp-menu-appear-top",menuAppearBottom:"dp-menu-appear-bottom",open:"dp-slide-down",close:"dp-slide-up",next:"calendar-next",previous:"calendar-prev",vNext:"dp-slide-up",vPrevious:"dp-slide-down",...e??{}}),pi=e=>({toggleOverlay:"Toggle overlay",menu:"Datepicker menu",input:"Datepicker input",openTimePicker:"Open time picker",closeTimePicker:"Close time Picker",incrementValue:t=>`Increment ${t}`,decrementValue:t=>`Decrement ${t}`,openTpOverlay:t=>`Open ${t} overlay`,amPmButton:"Switch AM/PM mode",openYearsOverlay:"Open years overlay",openMonthsOverlay:"Open months overlay",nextMonth:"Next month",prevMonth:"Previous month",nextYear:"Next year",prevYear:"Previous year",day:void 0,weekDay:void 0,clearInput:"Clear value",calendarIcon:"Calendar icon",timePicker:"Time picker",monthPicker:t=>`Month picker${t?" overlay":""}`,yearPicker:t=>`Year picker${t?" overlay":""}`,timeOverlay:t=>`${t} overlay`,...e??{}}),Qn=e=>e?typeof e=="boolean"?e?2:0:+e>=2?+e:2:0,fi=e=>{const t=typeof e=="object"&&e,n={static:!0,solo:!1};if(!e)return{...n,count:Qn(!1)};const a=t?e:{},r=t?a.count??!0:e,l=Qn(r);return Object.assign(n,a,{count:l})},hi=(e,t,n)=>e||(typeof n=="string"?n:t),yi=e=>typeof e=="boolean"?e?Wn({}):!1:Wn(e),gi=e=>{const t={enterSubmit:!0,tabSubmit:!0,openMenu:"open",selectOnFocus:!1,rangeSeparator:" - "};return typeof e=="object"?{...t,...e??{},enabled:!0}:{...t,enabled:e}},bi=e=>({months:[],years:[],times:{hours:[],minutes:[],seconds:[]},...e??{}}),wi=e=>({showSelect:!0,showCancel:!0,showNow:!1,showPreview:!0,...e??{}}),_i=e=>{const t={input:!1};return typeof e=="object"?{...t,...e??{},enabled:!0}:{enabled:e,...t}},ki=e=>({allowStopPropagation:!0,closeOnScroll:!1,modeHeight:255,allowPreventDefault:!1,closeOnClearValue:!0,closeOnAutoApply:!0,noSwipe:!1,keepActionRow:!1,onClickOutside:void 0,tabOutClosesMenu:!0,arrowLeft:void 0,keepViewOnOffsetClick:!1,timeArrowHoldThreshold:0,shadowDom:!1,...e??{}}),xi=e=>{const t={dates:Array.isArray(e)?e.map(n=>Q(n)):[],years:[],months:[],quarters:[],weeks:[],weekdays:[],options:{highlightDisabled:!1}};return typeof e=="function"?e:{...t,...e??{}}},Mi=e=>typeof e=="object"?{type:e?.type??"local",hideOnOffsetDates:e?.hideOnOffsetDates??!1}:{type:e,hideOnOffsetDates:!1},Di=e=>{const t={noDisabledRange:!1,showLastInRange:!0,minMaxRawRange:!1,partialRange:!0,disableTimeRangeValidation:!1,maxRange:void 0,minRange:void 0,autoRange:void 0,fixedStart:!1,fixedEnd:!1};return typeof e=="object"?{enabled:!0,...t,...e}:{enabled:e,...t}},Ti=e=>e?typeof e=="string"?{timezone:e,exactMatch:!1,dateInTz:void 0,emitTimezone:void 0,convertModel:!0}:{timezone:e.timezone,exactMatch:e.exactMatch??!1,dateInTz:e.dateInTz??void 0,emitTimezone:e.emitTimezone??void 0,convertModel:e.convertModel??!0}:{timezone:void 0,exactMatch:!1,emitTimezone:void 0},en=(e,t,n)=>new Map(e.map(a=>{const r=wn(a,t,n);return[xn(r),r]})),Pi=(e,t)=>e.length?new Map(e.map(n=>{const a=wn(n.date,t);return[xn(a),n]})):null,Ai=e=>{var t;return{minDate:ln(e.minDate,e.timezone,e.isSpecific),maxDate:ln(e.maxDate,e.timezone,e.isSpecific),disabledDates:Qa(e.disabledDates)?en(e.disabledDates,e.timezone,e.isSpecific):e.disabledDates,allowedDates:Qa(e.allowedDates)?en(e.allowedDates,e.timezone,e.isSpecific):null,highlight:typeof e.highlight=="object"&&Qa((t=e.highlight)==null?void 0:t.dates)?en(e.highlight.dates,e.timezone):e.highlight,markers:Pi(e.markers,e.timezone)}},Ci=e=>typeof e=="boolean"?{enabled:e,dragSelect:!0,limit:null}:{enabled:!!e,limit:e.limit?+e.limit:null,dragSelect:e.dragSelect??!0},Oi=e=>({...Object.fromEntries(Object.keys(e).map(t=>{const n=t,a=e[n],r=typeof e[n]=="string"?{[a]:!0}:Object.fromEntries(a.map(l=>[l,!0]));return[t,r]}))}),Se=e=>{const t=()=>{const E=e.enableSeconds?":ss":"",B=e.enableMinutes?":mm":"";return e.is24?`HH${B}${E}`:`hh${B}${E} aa`},n=()=>{var E;return e.format?e.format:e.monthPicker?"MM/yyyy":e.timePicker?t():e.weekPicker?`${((E=S.value)==null?void 0:E.type)==="iso"?"RR":"ww"}-yyyy`:e.yearPicker?"yyyy":e.quarterPicker?"QQQ/yyyy":e.enableTimePicker?`MM/dd/yyyy, ${t()}`:"MM/dd/yyyy"},a=E=>xr(E,e.enableSeconds),r=()=>q.value.enabled?e.startTime&&Array.isArray(e.startTime)?[a(e.startTime[0]),a(e.startTime[1])]:null:e.startTime&&!Array.isArray(e.startTime)?a(e.startTime):null,l=G(()=>fi(e.multiCalendars)),i=G(()=>r()),p=G(()=>pi(e.ariaLabels)),c=G(()=>bi(e.filters)),C=G(()=>yi(e.transitions)),m=G(()=>wi(e.actionRow)),v=G(()=>hi(e.previewFormat,e.format,n())),h=G(()=>gi(e.textInput)),k=G(()=>_i(e.inline)),Y=G(()=>ki(e.config)),f=G(()=>xi(e.highlight)),S=G(()=>Mi(e.weekNumbers)),I=G(()=>Ti(e.timezone)),U=G(()=>Ci(e.multiDates)),A=G(()=>Ai({minDate:e.minDate,maxDate:e.maxDate,disabledDates:e.disabledDates,allowedDates:e.allowedDates,highlight:f.value,markers:e.markers,timezone:I.value,isSpecific:e.monthPicker||e.yearPicker||e.quarterPicker})),q=G(()=>Di(e.range)),ae=G(()=>Oi(e.ui));return{defaultedTransitions:C,defaultedMultiCalendars:l,defaultedStartTime:i,defaultedAriaLabels:p,defaultedFilters:c,defaultedActionRow:m,defaultedPreviewFormat:v,defaultedTextInput:h,defaultedInline:k,defaultedConfig:Y,defaultedHighlight:f,defaultedWeekNumbers:S,defaultedRange:q,propDates:A,defaultedTz:I,defaultedMultiDates:U,defaultedUI:ae,getDefaultPattern:n,getDefaultStartTime:r}},$i=(e,t,n)=>{const a=Z(),{defaultedTextInput:r,defaultedRange:l,defaultedTz:i,defaultedMultiDates:p,getDefaultPattern:c}=Se(t),C=Z(""),m=ca(t,"format"),v=ca(t,"formatLocale");ct(a,()=>{typeof t.onInternalModelChange=="function"&&e("internal-model-change",a.value,z(!0))},{deep:!0}),ct(l,(u,le)=>{u.enabled!==le.enabled&&(a.value=null)}),ct(m,()=>{re()});const h=u=>i.value.timezone&&i.value.convertModel?nt(u,i.value.timezone):u,k=u=>{if(i.value.timezone&&i.value.convertModel){const le=Ko(i.value.timezone);return Xr(u,le)}return u},Y=(u,le,fe=!1)=>Dr(u,t.format,t.formatLocale,r.value.rangeSeparator,t.modelAuto,le??c(),fe),f=u=>u?t.modelType?b(u):{hours:Tt(u),minutes:Rt(u),seconds:t.enableSeconds?jt(u):0}:null,S=u=>t.modelType?b(u):{month:xe(u),year:he(u)},I=u=>Array.isArray(u)?p.value.enabled?u.map(le=>U(le,_t(Q(),le))):ka(()=>[_t(Q(),u[0]),u[1]?_t(Q(),u[1]):zt(l.value.partialRange)],l.value.enabled):_t(Q(),+u),U=(u,le)=>(typeof u=="string"||typeof u=="number")&&t.modelType?R(u):le,A=u=>Array.isArray(u)?[U(u[0],St(null,+u[0].hours,+u[0].minutes,u[0].seconds)),U(u[1],St(null,+u[1].hours,+u[1].minutes,u[1].seconds))]:U(u,St(null,u.hours,u.minutes,u.seconds)),q=u=>{const le=Ce(Q(),{date:1});return Array.isArray(u)?p.value.enabled?u.map(fe=>U(fe,Mt(le,+fe.month,+fe.year))):ka(()=>[U(u[0],Mt(le,+u[0].month,+u[0].year)),U(u[1],u[1]?Mt(le,+u[1].month,+u[1].year):zt(l.value.partialRange))],l.value.enabled):U(u,Mt(le,+u.month,+u.year))},ae=u=>{if(Array.isArray(u))return u.map(le=>R(le));throw new Error(kn.dateArr("multi-dates"))},E=u=>{if(Array.isArray(u)&&l.value.enabled){const le=u[0],fe=u[1];return[Q(Array.isArray(le)?le[0]:null),Array.isArray(fe)&&fe.length?Q(fe[0]):null]}return Q(u[0])},B=u=>t.modelAuto?Array.isArray(u)?[R(u[0]),R(u[1])]:t.autoApply?[R(u)]:[R(u),null]:Array.isArray(u)?ka(()=>u[1]?[R(u[0]),u[1]?R(u[1]):zt(l.value.partialRange)]:[R(u[0])],l.value.enabled):R(u),ne=()=>{Array.isArray(a.value)&&l.value.enabled&&a.value.length===1&&a.value.push(zt(l.value.partialRange))},F=()=>{const u=a.value;return[b(u[0]),u[1]?b(u[1]):zt(l.value.partialRange)]},N=()=>a.value[1]?F():b(qe(a.value[0])),ie=()=>(a.value||[]).map(u=>b(u)),ce=(u=!1)=>(u||ne(),t.modelAuto?N():p.value.enabled?ie():Array.isArray(a.value)?ka(()=>F(),l.value.enabled):b(qe(a.value))),pe=u=>!u||Array.isArray(u)&&!u.length?null:t.timePicker?A(qe(u)):t.monthPicker?q(qe(u)):t.yearPicker?I(qe(u)):p.value.enabled?ae(qe(u)):t.weekPicker?E(qe(u)):B(qe(u)),g=u=>{const le=pe(u);sn(qe(le))?(a.value=qe(le),re()):(a.value=null,C.value="")},D=()=>{const u=le=>kt(le,r.value.format);return`${u(a.value[0])} ${r.value.rangeSeparator} ${a.value[1]?u(a.value[1]):""}`},y=()=>n.value&&a.value?Array.isArray(a.value)?D():kt(a.value,r.value.format):Y(a.value),H=()=>a.value?p.value.enabled?a.value.map(u=>Y(u)).join("; "):r.value.enabled&&typeof r.value.format=="string"?y():Y(a.value):"",re=()=>{!t.format||typeof t.format=="string"||r.value.enabled&&typeof r.value.format=="string"?C.value=H():C.value=t.format(a.value)},R=u=>{if(t.utc){const le=new Date(u);return t.utc==="preserve"?new Date(le.getTime()+le.getTimezoneOffset()*6e4):le}return t.modelType?Jo.includes(t.modelType)?h(new Date(u)):t.modelType==="format"&&(typeof t.format=="string"||!t.format)?h(rn(u,c(),new Date,{locale:v.value})):h(rn(u,t.modelType,new Date,{locale:v.value})):h(new Date(u))},b=u=>u?t.utc?si(u,t.utc==="preserve",t.enableSeconds):t.modelType?t.modelType==="timestamp"?+k(u):t.modelType==="iso"?k(u).toISOString():t.modelType==="format"&&(typeof t.format=="string"||!t.format)?Y(k(u)):Y(k(u),t.modelType,!0):k(u):"",oe=(u,le=!1,fe=!1)=>{if(fe)return u;if(e("update:model-value",u),i.value.emitTimezone&&le){const Ve=Array.isArray(u)?u.map(T=>nt(qe(T),i.value.emitTimezone)):nt(qe(u),i.value.emitTimezone);e("update:model-timezone-value",Ve)}},V=u=>Array.isArray(a.value)?p.value.enabled?a.value.map(le=>u(le)):[u(a.value[0]),a.value[1]?u(a.value[1]):zt(l.value.partialRange)]:u(qe(a.value)),M=()=>{if(Array.isArray(a.value)){const u=xt(a.value[0],t.weekStart),le=a.value[1]?xt(a.value[1],t.weekStart):[];return[u.map(fe=>Q(fe)),le.map(fe=>Q(fe))]}return xt(a.value,t.weekStart).map(u=>Q(u))},o=(u,le)=>oe(qe(V(u)),!1,le),w=u=>{const le=M();return u?le:e("update:model-value",M())},z=(u=!1)=>(u||re(),t.monthPicker?o(S,u):t.timePicker?o(f,u):t.yearPicker?o(he,u):t.weekPicker?w(u):oe(ce(u),!0,u));return{inputValue:C,internalModelValue:a,checkBeforeEmit:()=>a.value?l.value.enabled?l.value.partialRange?a.value.length>=1:a.value.length===2:!!a.value:!1,parseExternalModelValue:g,formatInputValue:re,emitModelValue:z}},Yi=(e,t)=>{const{defaultedFilters:n,propDates:a}=Se(e),{validateMonthYearInRange:r}=Et(e),l=(m,v)=>{let h=m;return n.value.months.includes(xe(h))?(h=v?ft(m,1):Jt(m,1),l(h,v)):h},i=(m,v)=>{let h=m;return n.value.years.includes(he(h))?(h=v?un(m,1):pr(m,1),i(h,v)):h},p=(m,v=!1)=>{const h=Ce(Q(),{month:e.month,year:e.year});let k=m?ft(h,1):Jt(h,1);e.disableYearSelect&&(k=_t(k,e.year));let Y=xe(k),f=he(k);n.value.months.includes(Y)&&(k=l(k,m),Y=xe(k),f=he(k)),n.value.years.includes(f)&&(k=i(k,m),f=he(k)),r(Y,f,m,e.preventMinMaxNavigation)&&c(Y,f,v)},c=(m,v,h)=>{t("update-month-year",{month:m,year:v,fromNav:h})},C=G(()=>m=>Mr(Ce(Q(),{month:e.month,year:e.year}),a.value.maxDate,a.value.minDate,e.preventMinMaxNavigation,m));return{handleMonthYearChange:p,isDisabled:C,updateMonthYear:c}},Ya={multiCalendars:{type:[Boolean,Number,String,Object],default:void 0},modelValue:{type:[String,Date,Array,Object,Number],default:null},modelType:{type:String,default:null},position:{type:String,default:"center"},dark:{type:Boolean,default:!1},format:{type:[String,Function],default:()=>null},autoPosition:{type:Boolean,default:!0},altPosition:{type:Function,default:null},transitions:{type:[Boolean,Object],default:!0},formatLocale:{type:Object,default:null},utc:{type:[Boolean,String],default:!1},ariaLabels:{type:Object,default:()=>({})},offset:{type:[Number,String],default:10},hideNavigation:{type:Array,default:()=>[]},timezone:{type:[String,Object],default:null},vertical:{type:Boolean,default:!1},disableMonthYearSelect:{type:Boolean,default:!1},disableYearSelect:{type:Boolean,default:!1},dayClass:{type:Function,default:null},yearRange:{type:Array,default:()=>[1900,2100]},enableTimePicker:{type:Boolean,default:!0},autoApply:{type:Boolean,default:!1},disabledDates:{type:[Array,Function],default:()=>[]},monthNameFormat:{type:String,default:"short"},startDate:{type:[Date,String],default:null},startTime:{type:[Object,Array],default:null},hideOffsetDates:{type:Boolean,default:!1},noToday:{type:Boolean,default:!1},disabledWeekDays:{type:Array,default:()=>[]},allowedDates:{type:Array,default:null},nowButtonLabel:{type:String,default:"Now"},markers:{type:Array,default:()=>[]},escClose:{type:Boolean,default:!0},spaceConfirm:{type:Boolean,default:!0},monthChangeOnArrows:{type:Boolean,default:!0},presetDates:{type:Array,default:()=>[]},flow:{type:Array,default:()=>[]},partialFlow:{type:Boolean,default:!1},preventMinMaxNavigation:{type:Boolean,default:!1},reverseYears:{type:Boolean,default:!1},weekPicker:{type:Boolean,default:!1},filters:{type:Object,default:()=>({})},arrowNavigation:{type:Boolean,default:!1},highlight:{type:[Function,Object],default:null},teleport:{type:[Boolean,String,Object],default:null},teleportCenter:{type:Boolean,default:!1},locale:{type:String,default:"en-Us"},weekNumName:{type:String,default:"W"},weekStart:{type:[Number,String],default:1},weekNumbers:{type:[String,Function,Object],default:null},monthChangeOnScroll:{type:[Boolean,String],default:!0},dayNames:{type:[Function,Array],default:null},monthPicker:{type:Boolean,default:!1},customProps:{type:Object,default:null},yearPicker:{type:Boolean,default:!1},modelAuto:{type:Boolean,default:!1},selectText:{type:String,default:"Select"},cancelText:{type:String,default:"Cancel"},previewFormat:{type:[String,Function],default:()=>""},multiDates:{type:[Object,Boolean],default:!1},ignoreTimeValidation:{type:Boolean,default:!1},minDate:{type:[Date,String],default:null},maxDate:{type:[Date,String],default:null},minTime:{type:Object,default:null},maxTime:{type:Object,default:null},name:{type:String,default:null},placeholder:{type:String,default:""},hideInputIcon:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},state:{type:Boolean,default:null},required:{type:Boolean,default:!1},autocomplete:{type:String,default:"off"},timePicker:{type:Boolean,default:!1},enableSeconds:{type:Boolean,default:!1},is24:{type:Boolean,default:!0},noHoursOverlay:{type:Boolean,default:!1},noMinutesOverlay:{type:Boolean,default:!1},noSecondsOverlay:{type:Boolean,default:!1},hoursGridIncrement:{type:[String,Number],default:1},minutesGridIncrement:{type:[String,Number],default:5},secondsGridIncrement:{type:[String,Number],default:5},hoursIncrement:{type:[Number,String],default:1},minutesIncrement:{type:[Number,String],default:1},secondsIncrement:{type:[Number,String],default:1},range:{type:[Boolean,Object],default:!1},uid:{type:String,default:null},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},inline:{type:[Boolean,Object],default:!1},textInput:{type:[Boolean,Object],default:!1},sixWeeks:{type:[Boolean,String],default:!1},actionRow:{type:Object,default:()=>({})},focusStartDate:{type:Boolean,default:!1},disabledTimes:{type:[Function,Array],default:void 0},timePickerInline:{type:Boolean,default:!1},calendar:{type:Function,default:null},config:{type:Object,default:void 0},quarterPicker:{type:Boolean,default:!1},yearFirst:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},onInternalModelChange:{type:[Function,Object],default:null},enableMinutes:{type:Boolean,default:!0},ui:{type:Object,default:()=>({})}},yt={...Ya,shadow:{type:Boolean,default:!1},flowStep:{type:Number,default:0},internalModelValue:{type:[Date,Array],default:null},noOverlayFocus:{type:Boolean,default:!1},collapse:{type:Boolean,default:!1},menuWrapRef:{type:Object,default:null},getInputRect:{type:Function,default:()=>({})},isTextInputDate:{type:Boolean,default:!1}},Si=["title"],Ri=["disabled"],Ii=ze({compatConfig:{MODE:3},__name:"ActionRow",props:{menuMount:{type:Boolean,default:!1},calendarWidth:{type:Number,default:0},...yt},emits:["close-picker","select-date","select-now","invalid-select"],setup(e,{emit:t}){const n=t,a=e,{defaultedActionRow:r,defaultedPreviewFormat:l,defaultedMultiCalendars:i,defaultedTextInput:p,defaultedInline:c,defaultedRange:C,defaultedMultiDates:m}=Se(a),{isTimeValid:v,isMonthValid:h}=Et(a),{buildMatrix:k}=It(),Y=Z(null),f=Z(null),S=Z(!1),I=Z({}),U=Z(null),A=Z(null);Ke(()=>{a.arrowNavigation&&k([Fe(Y),Fe(f)],"actionRow"),q(),window.addEventListener("resize",q)}),Ca(()=>{window.removeEventListener("resize",q)});const q=()=>{S.value=!1,setTimeout(()=>{var g,D;const y=(g=U.value)==null?void 0:g.getBoundingClientRect(),H=(D=A.value)==null?void 0:D.getBoundingClientRect();y&&H&&(I.value.maxWidth=`${H.width-y.width-20}px`),S.value=!0},0)},ae=G(()=>C.value.enabled&&!C.value.partialRange&&a.internalModelValue?a.internalModelValue.length===2:!0),E=G(()=>!v.value(a.internalModelValue)||!h.value(a.internalModelValue)||!ae.value),B=()=>{const g=l.value;return a.timePicker||a.monthPicker,g(qe(a.internalModelValue))},ne=()=>{const g=a.internalModelValue;return i.value.count>0?`${F(g[0])} - ${F(g[1])}`:[F(g[0]),F(g[1])]},F=g=>Dr(g,l.value,a.formatLocale,p.value.rangeSeparator,a.modelAuto,l.value),N=G(()=>!a.internalModelValue||!a.menuMount?"":typeof l.value=="string"?Array.isArray(a.internalModelValue)?a.internalModelValue.length===2&&a.internalModelValue[1]?ne():m.value.enabled?a.internalModelValue.map(g=>`${F(g)}`):a.modelAuto?`${F(a.internalModelValue[0])}`:`${F(a.internalModelValue[0])} -`:F(a.internalModelValue):B()),ie=()=>m.value.enabled?"; ":" - ",ce=G(()=>Array.isArray(N.value)?N.value.join(ie()):N.value),pe=()=>{v.value(a.internalModelValue)&&h.value(a.internalModelValue)&&ae.value?n("select-date"):n("invalid-select")};return(g,D)=>(P(),W("div",{ref_key:"actionRowRef",ref:A,class:"dp__action_row"},[g.$slots["action-row"]?ue(g.$slots,"action-row",We(Qe({key:0},{internalModelValue:g.internalModelValue,disabled:E.value,selectDate:()=>g.$emit("select-date"),closePicker:()=>g.$emit("close-picker")}))):(P(),W(we,{key:1},[d(r).showPreview?(P(),W("div",{key:0,class:"dp__selection_preview",title:ce.value,style:dt(I.value)},[g.$slots["action-preview"]&&S.value?ue(g.$slots,"action-preview",{key:0,value:g.internalModelValue}):j("",!0),!g.$slots["action-preview"]&&S.value?(P(),W(we,{key:1},[Dt(Ge(ce.value),1)],64)):j("",!0)],12,Si)):j("",!0),ye("div",{ref_key:"actionBtnContainer",ref:U,class:"dp__action_buttons","data-dp-element":"action-row"},[g.$slots["action-buttons"]?ue(g.$slots,"action-buttons",{key:0,value:g.internalModelValue}):j("",!0),g.$slots["action-buttons"]?j("",!0):(P(),W(we,{key:1},[!d(c).enabled&&d(r).showCancel?(P(),W("button",{key:0,ref_key:"cancelButtonRef",ref:Y,type:"button",class:"dp__action_button dp__action_cancel",onClick:D[0]||(D[0]=y=>g.$emit("close-picker")),onKeydown:D[1]||(D[1]=y=>d(et)(y,()=>g.$emit("close-picker")))},Ge(g.cancelText),545)):j("",!0),d(r).showNow?(P(),W("button",{key:1,type:"button",class:"dp__action_button dp__action_cancel",onClick:D[2]||(D[2]=y=>g.$emit("select-now")),onKeydown:D[3]||(D[3]=y=>d(et)(y,()=>g.$emit("select-now")))},Ge(g.nowButtonLabel),33)):j("",!0),d(r).showSelect?(P(),W("button",{key:2,ref_key:"selectButtonRef",ref:f,type:"button",class:"dp__action_button dp__action_select",disabled:E.value,"data-test":"select-button",onKeydown:D[4]||(D[4]=y=>d(et)(y,()=>pe())),onClick:pe},Ge(g.selectText),41,Ri)):j("",!0)],64))],512)],64))],512))}}),Ei=["role","aria-label","tabindex"],Bi={class:"dp__selection_grid_header"},Ni=["aria-selected","aria-disabled","data-test","onClick","onKeydown","onMouseover"],Li=["aria-label"],ya=ze({__name:"SelectionOverlay",props:{items:{},type:{},isLast:{type:Boolean},arrowNavigation:{type:Boolean},skipButtonRef:{type:Boolean},headerRefs:{},hideNavigation:{},escClose:{type:Boolean},useRelative:{type:Boolean},height:{},textInput:{type:[Boolean,Object]},config:{},noOverlayFocus:{type:Boolean},focusValue:{},menuWrapRef:{},ariaLabels:{},overlayLabel:{}},emits:["selected","toggle","reset-flow","hover-value"],setup(e,{expose:t,emit:n}){const{setSelectionGrid:a,buildMultiLevelMatrix:r,setMonthPicker:l}=It(),i=n,p=e,{defaultedAriaLabels:c,defaultedTextInput:C,defaultedConfig:m}=Se(p),{hideNavigationButtons:v}=Ia(),h=Z(!1),k=Z(null),Y=Z(null),f=Z([]),S=Z(),I=Z(null),U=Z(0),A=Z(null);Hr(()=>{k.value=null}),Ke(()=>{it().then(()=>ie()),p.noOverlayFocus||ae(),q(!0)}),Ca(()=>q(!1));const q=V=>{var M;p.arrowNavigation&&((M=p.headerRefs)!=null&&M.length?l(V):a(V))},ae=()=>{var V;const M=Fe(Y);M&&(C.value.enabled||(k.value?(V=k.value)==null||V.focus({preventScroll:!0}):M.focus({preventScroll:!0})),h.value=M.clientHeight({dp__overlay:!0,"dp--overlay-absolute":!p.useRelative,"dp--overlay-relative":p.useRelative})),B=G(()=>p.useRelative?{height:`${p.height}px`,width:"var(--dp-menu-min-width)"}:void 0),ne=G(()=>({dp__overlay_col:!0})),F=G(()=>({dp__btn:!0,dp__button:!0,dp__overlay_action:!0,dp__over_action_scroll:h.value,dp__button_bottom:p.isLast})),N=G(()=>{var V,M;return{dp__overlay_container:!0,dp__container_flex:((V=p.items)==null?void 0:V.length)<=6,dp__container_block:((M=p.items)==null?void 0:M.length)>6}});ct(()=>p.items,()=>ie(!1),{deep:!0});const ie=(V=!0)=>{it().then(()=>{const M=Fe(k),o=Fe(Y),w=Fe(I),z=Fe(A),u=w?w.getBoundingClientRect().height:0;o&&(o.getBoundingClientRect().height?U.value=o.getBoundingClientRect().height-u:U.value=m.value.modeHeight-u),M&&z&&V&&(z.scrollTop=M.offsetTop-z.offsetTop-(U.value/2-M.getBoundingClientRect().height)-u)})},ce=V=>{V.disabled||i("selected",V.value)},pe=()=>{i("toggle"),i("reset-flow")},g=()=>{p.escClose&&pe()},D=(V,M,o,w)=>{V&&((M.active||M.value===p.focusValue)&&(k.value=V),p.arrowNavigation&&(Array.isArray(f.value[o])?f.value[o][w]=V:f.value[o]=[V],y()))},y=()=>{var V,M;const o=(V=p.headerRefs)!=null&&V.length?[p.headerRefs].concat(f.value):f.value.concat([p.skipButtonRef?[]:[I.value]]);r(qe(o),(M=p.headerRefs)!=null&&M.length?"monthPicker":"selectionGrid")},H=V=>{p.arrowNavigation||Yt(V,m.value,!0)},re=V=>{S.value=V,i("hover-value",V)},R=()=>{if(pe(),!p.isLast){const V=on(p.menuWrapRef??null,"action-row");if(V){const M=gr(V);M?.focus()}}},b=V=>{switch(V.key){case $e.esc:return g();case $e.arrowLeft:return H(V);case $e.arrowRight:return H(V);case $e.arrowUp:return H(V);case $e.arrowDown:return H(V);default:return}},oe=V=>{if(V.key===$e.enter)return pe();if(V.key===$e.tab)return R()};return t({focusGrid:ae}),(V,M)=>{var o;return P(),W("div",{ref_key:"gridWrapRef",ref:Y,class:ke(E.value),style:dt(B.value),role:V.useRelative?void 0:"dialog","aria-label":V.overlayLabel,tabindex:V.useRelative?void 0:"0",onKeydown:b,onClick:M[0]||(M[0]=va(()=>{},["prevent"]))},[ye("div",{ref_key:"containerRef",ref:A,class:ke(N.value),style:dt({"--dp-overlay-height":`${U.value}px`}),role:"grid"},[ye("div",Bi,[ue(V.$slots,"header")]),V.$slots.overlay?ue(V.$slots,"overlay",{key:0}):(P(!0),W(we,{key:1},Ye(V.items,(w,z)=>(P(),W("div",{key:z,class:ke(["dp__overlay_row",{dp__flex_row:V.items.length>=3}]),role:"row"},[(P(!0),W(we,null,Ye(w,(u,le)=>(P(),W("div",{key:u.value,ref_for:!0,ref:fe=>D(fe,u,z,le),role:"gridcell",class:ke(ne.value),"aria-selected":u.active||void 0,"aria-disabled":u.disabled||void 0,tabindex:"0","data-test":u.text,onClick:va(fe=>ce(u),["prevent"]),onKeydown:fe=>d(et)(fe,()=>ce(u),!0),onMouseover:fe=>re(u.value)},[ye("div",{class:ke(u.className)},[V.$slots.item?ue(V.$slots,"item",{key:0,item:u}):j("",!0),V.$slots.item?j("",!0):(P(),W(we,{key:1},[Dt(Ge(u.text),1)],64))],2)],42,Ni))),128))],2))),128))],6),V.$slots["button-icon"]?Ma((P(),W("button",{key:0,ref_key:"toggleButton",ref:I,type:"button","aria-label":(o=d(c))==null?void 0:o.toggleOverlay,class:ke(F.value),tabindex:"0",onClick:pe,onKeydown:oe},[ue(V.$slots,"button-icon")],42,Li)),[[Da,!d(v)(V.hideNavigation,V.type)]]):j("",!0)],46,Ei)}}}),Sa=ze({__name:"InstanceWrap",props:{multiCalendars:{},stretch:{type:Boolean},collapse:{type:Boolean}},setup(e){const t=e,n=G(()=>t.multiCalendars>0?[...Array(t.multiCalendars).keys()]:[0]),a=G(()=>({dp__instance_calendar:t.multiCalendars>0}));return(r,l)=>(P(),W("div",{class:ke({dp__menu_inner:!r.stretch,"dp--menu--inner-stretched":r.stretch,dp__flex_display:r.multiCalendars>0,"dp--flex-display-collapsed":r.collapse})},[(P(!0),W(we,null,Ye(n.value,(i,p)=>(P(),W("div",{key:i,class:ke(a.value)},[ue(r.$slots,"default",{instance:i,index:p})],2))),128))],2))}}),Hi=["data-dp-element","aria-label","aria-disabled"],da=ze({compatConfig:{MODE:3},__name:"ArrowBtn",props:{ariaLabel:{},elName:{},disabled:{type:Boolean}},emits:["activate","set-ref"],setup(e,{emit:t}){const n=t,a=Z(null);return Ke(()=>n("set-ref",a)),(r,l)=>(P(),W("button",{ref_key:"elRef",ref:a,type:"button","data-dp-element":r.elName,class:"dp__btn dp--arrow-btn-nav",tabindex:"0","aria-label":r.ariaLabel,"aria-disabled":r.disabled||void 0,onClick:l[0]||(l[0]=i=>r.$emit("activate")),onKeydown:l[1]||(l[1]=i=>d(et)(i,()=>r.$emit("activate"),!0))},[ye("span",{class:ke(["dp__inner_nav",{dp__inner_nav_disabled:r.disabled}])},[ue(r.$slots,"default")],2)],40,Hi))}}),Vi=["aria-label","data-test"],Cr=ze({__name:"YearModePicker",props:{...yt,showYearPicker:{type:Boolean,default:!1},items:{type:Array,default:()=>[]},instance:{type:Number,default:0},year:{type:Number,default:0},isDisabled:{type:Function,default:()=>!1}},emits:["toggle-year-picker","year-select","handle-year"],setup(e,{emit:t}){const n=t,a=e,{showRightIcon:r,showLeftIcon:l}=Ia(),{defaultedConfig:i,defaultedMultiCalendars:p,defaultedAriaLabels:c,defaultedTransitions:C,defaultedUI:m}=Se(a),{showTransition:v,transitionName:h}=ga(C),k=Z(!1),Y=(I=!1,U)=>{k.value=!k.value,n("toggle-year-picker",{flow:I,show:U})},f=I=>{k.value=!1,n("year-select",I)},S=(I=!1)=>{n("handle-year",I)};return(I,U)=>{var A,q,ae,E,B;return P(),W(we,null,[ye("div",{class:ke(["dp--year-mode-picker",{"dp--hidden-el":k.value}])},[d(l)(d(p),e.instance)?(P(),De(da,{key:0,ref:"mpPrevIconRef","aria-label":(A=d(c))==null?void 0:A.prevYear,disabled:e.isDisabled(!1),class:ke((q=d(m))==null?void 0:q.navBtnPrev),onActivate:U[0]||(U[0]=ne=>S(!1))},{default:_e(()=>[I.$slots["arrow-left"]?ue(I.$slots,"arrow-left",{key:0}):j("",!0),I.$slots["arrow-left"]?j("",!0):(P(),De(d(fn),{key:1}))]),_:3},8,["aria-label","disabled","class"])):j("",!0),ye("button",{ref:"mpYearButtonRef",class:"dp__btn dp--year-select",type:"button","aria-label":`${e.year}-${(ae=d(c))==null?void 0:ae.openYearsOverlay}`,"data-test":`year-mode-btn-${e.instance}`,onClick:U[1]||(U[1]=()=>Y(!1)),onKeydown:U[2]||(U[2]=Vr(()=>Y(!1),["enter"]))},[I.$slots.year?ue(I.$slots,"year",{key:0,year:e.year}):j("",!0),I.$slots.year?j("",!0):(P(),W(we,{key:1},[Dt(Ge(e.year),1)],64))],40,Vi),d(r)(d(p),e.instance)?(P(),De(da,{key:1,ref:"mpNextIconRef","aria-label":(E=d(c))==null?void 0:E.nextYear,disabled:e.isDisabled(!0),class:ke((B=d(m))==null?void 0:B.navBtnNext),onActivate:U[3]||(U[3]=ne=>S(!0))},{default:_e(()=>[I.$slots["arrow-right"]?ue(I.$slots,"arrow-right",{key:0}):j("",!0),I.$slots["arrow-right"]?j("",!0):(P(),De(d(hn),{key:1}))]),_:3},8,["aria-label","disabled","class"])):j("",!0)],2),ot(ta,{name:d(h)(e.showYearPicker),css:d(v)},{default:_e(()=>{var ne,F;return[e.showYearPicker?(P(),De(ya,{key:0,items:e.items,"text-input":I.textInput,"esc-close":I.escClose,config:I.config,"is-last":I.autoApply&&!d(i).keepActionRow,"hide-navigation":I.hideNavigation,"aria-labels":I.ariaLabels,"overlay-label":(F=(ne=d(c))==null?void 0:ne.yearPicker)==null?void 0:F.call(ne,!0),type:"year",onToggle:Y,onSelected:U[4]||(U[4]=N=>f(N))},je({"button-icon":_e(()=>[I.$slots["calendar-icon"]?ue(I.$slots,"calendar-icon",{key:0}):j("",!0),I.$slots["calendar-icon"]?j("",!0):(P(),De(d(aa),{key:1}))]),_:2},[I.$slots["year-overlay-value"]?{name:"item",fn:_e(({item:N})=>[ue(I.$slots,"year-overlay-value",{text:N.text,value:N.value})]),key:"0"}:void 0]),1032,["items","text-input","esc-close","config","is-last","hide-navigation","aria-labels","overlay-label"])):j("",!0)]}),_:3},8,["name","css"])],64)}}}),Dn=(e,t,n)=>{if(t.value&&Array.isArray(t.value))if(t.value.some(a=>Me(e,a))){const a=t.value.filter(r=>!Me(r,e));t.value=a.length?a:null}else(n&&+n>t.value.length||!n)&&t.value.push(e);else t.value=[e]},Tn=(e,t,n)=>{let a=e.value?e.value.slice():[];return a.length===2&&a[1]!==null&&(a=[]),a.length?Ie(t,a[0])?(a.unshift(t),n("range-start",a[0]),n("range-start",a[1])):(a[1]=t,n("range-end",t)):(a=[t],n("range-start",t)),a},Ra=(e,t,n,a)=>{e&&(e[0]&&e[1]&&n&&t("auto-apply"),e[0]&&!e[1]&&a&&n&&t("auto-apply"))},Or=e=>{Array.isArray(e.value)&&e.value.length<=2&&e.range?e.modelValue.value=e.value.map(t=>nt(Q(t),e.timezone)):Array.isArray(e.value)||(e.modelValue.value=nt(Q(e.value),e.timezone))},$r=(e,t,n,a)=>Array.isArray(t.value)&&(t.value.length===2||t.value.length===1&&a.value.partialRange)?a.value.fixedStart&&(Ne(e,t.value[0])||Me(e,t.value[0]))?[t.value[0],e]:a.value.fixedEnd&&(Ie(e,t.value[1])||Me(e,t.value[1]))?[e,t.value[1]]:(n("invalid-fixed-range",e),t.value):[],Yr=({multiCalendars:e,range:t,highlight:n,propDates:a,calendars:r,modelValue:l,props:i,filters:p,year:c,month:C,emit:m})=>{const v=G(()=>_n(i.yearRange,i.locale,i.reverseYears)),h=Z([!1]),k=G(()=>(N,ie)=>{const ce=Ce(pt(new Date),{month:C.value(N),year:c.value(N)}),pe=ie?tr(ce):ma(ce);return Mr(pe,a.value.maxDate,a.value.minDate,i.preventMinMaxNavigation,ie)}),Y=()=>Array.isArray(l.value)&&e.value.solo&&l.value[1],f=()=>{for(let N=0;N{if(!N)return f();const ie=Ce(Q(),r.value[N]);return r.value[0].year=he(pr(ie,e.value.count-1)),f()},I=(N,ie)=>{const ce=Zr(ie,N);return t.value.showLastInRange&&ce>1?ie:N},U=N=>i.focusStartDate||e.value.solo?N[0]:N[1]?I(N[0],N[1]):N[0],A=()=>{if(l.value){const N=Array.isArray(l.value)?U(l.value):l.value;r.value[0]={month:xe(N),year:he(N)}}},q=()=>{A(),e.value.count&&f()};ct(l,(N,ie)=>{i.isTextInputDate&&JSON.stringify(N??{})!==JSON.stringify(ie??{})&&q()}),Ke(()=>{q()});const ae=(N,ie)=>{r.value[ie].year=N,m("update-month-year",{instance:ie,year:N,month:r.value[ie].month}),e.value.count&&!e.value.solo&&S(ie)},E=G(()=>N=>Zt(v.value,ie=>{var ce;const pe=c.value(N)===ie.value,g=fa(ie.value,ea(a.value.minDate),ea(a.value.maxDate))||((ce=p.value.years)==null?void 0:ce.includes(c.value(N))),D=Mn(n.value,ie.value);return{active:pe,disabled:g,highlighted:D}})),B=(N,ie)=>{ae(N,ie),F(ie)},ne=(N,ie=!1)=>{if(!k.value(N,ie)){const ce=ie?c.value(N)+1:c.value(N)-1;ae(ce,N)}},F=(N,ie=!1,ce)=>{ie||m("reset-flow"),ce!==void 0?h.value[N]=ce:h.value[N]=!h.value[N],h.value[N]?m("overlay-toggle",{open:!0,overlay:Xe.year}):(m("overlay-closed"),m("overlay-toggle",{open:!1,overlay:Xe.year}))};return{isDisabled:k,groupedYears:E,showYearPicker:h,selectYear:ae,toggleYearPicker:F,handleYearSelect:B,handleYear:ne}},Fi=(e,t)=>{const{defaultedMultiCalendars:n,defaultedAriaLabels:a,defaultedTransitions:r,defaultedConfig:l,defaultedRange:i,defaultedHighlight:p,propDates:c,defaultedTz:C,defaultedFilters:m,defaultedMultiDates:v}=Se(e),h=()=>{e.isTextInputDate&&q(he(Q(e.startDate)),0)},{modelValue:k,year:Y,month:f,calendars:S}=ba(e,t,h),I=G(()=>hr(e.formatLocale,e.locale,e.monthNameFormat)),U=Z(null),{checkMinMaxRange:A}=Et(e),{selectYear:q,groupedYears:ae,showYearPicker:E,toggleYearPicker:B,handleYearSelect:ne,handleYear:F,isDisabled:N}=Yr({modelValue:k,multiCalendars:n,range:i,highlight:p,calendars:S,year:Y,propDates:c,month:f,filters:m,props:e,emit:t});Ke(()=>{e.startDate&&(k.value&&e.focusStartDate||!k.value)&&q(he(Q(e.startDate)),0)});const ie=o=>o?{month:xe(o),year:he(o)}:{month:null,year:null},ce=()=>k.value?Array.isArray(k.value)?k.value.map(o=>ie(o)):ie(k.value):ie(),pe=(o,w)=>{const z=S.value[o],u=ce();return Array.isArray(u)?u.some(le=>le.year===z?.year&&le.month===w):z?.year===u.year&&w===u.month},g=(o,w,z)=>{var u,le;const fe=ce();return Array.isArray(fe)?Y.value(w)===((u=fe[z])==null?void 0:u.year)&&o===((le=fe[z])==null?void 0:le.month):!1},D=(o,w)=>{if(i.value.enabled){const z=ce();if(Array.isArray(k.value)&&Array.isArray(z)){const u=g(o,w,0)||g(o,w,1),le=Mt(pt(Q()),o,Y.value(w));return $a(k.value,U.value,le)&&!u}return!1}return!1},y=G(()=>o=>Zt(I.value,w=>{var z;const u=pe(o,w.value),le=fa(w.value,wr(Y.value(o),c.value.minDate),_r(Y.value(o),c.value.maxDate))||mi(c.value.disabledDates,Y.value(o)).includes(w.value)||((z=m.value.months)==null?void 0:z.includes(w.value)),fe=D(w.value,o),Ve=Tr(p.value,w.value,Y.value(o));return{active:u,disabled:le,isBetween:fe,highlighted:Ve}})),H=(o,w)=>Mt(pt(Q()),o,Y.value(w)),re=(o,w)=>{const z=k.value?k.value:pt(new Date);k.value=Mt(z,o,Y.value(w)),t("auto-apply"),t("update-flow-step")},R=(o,w)=>{const z=H(o,w);i.value.fixedEnd||i.value.fixedStart?k.value=$r(z,k,t,i):k.value?A(z,k.value)&&(k.value=Tn(k,H(o,w),t)):k.value=[H(o,w)],it().then(()=>{Ra(k.value,t,e.autoApply,e.modelAuto)})},b=(o,w)=>{Dn(H(o,w),k,v.value.limit),t("auto-apply",!0)},oe=(o,w)=>(S.value[w].month=o,M(w,S.value[w].year,o),v.value.enabled?b(o,w):i.value.enabled?R(o,w):re(o,w)),V=(o,w)=>{q(o,w),M(w,o,null)},M=(o,w,z)=>{let u=z;if(!u&&u!==0){const le=ce();u=Array.isArray(le)?le[o].month:le.month}t("update-month-year",{instance:o,year:w,month:u})};return{groupedMonths:y,groupedYears:ae,year:Y,isDisabled:N,defaultedMultiCalendars:n,defaultedAriaLabels:a,defaultedTransitions:r,defaultedConfig:l,showYearPicker:E,modelValue:k,presetDate:(o,w)=>{Or({value:o,modelValue:k,range:i.value.enabled,timezone:w?void 0:C.value.timezone}),t("auto-apply")},setHoverDate:(o,w)=>{U.value=H(o,w)},selectMonth:oe,selectYear:V,toggleYearPicker:B,handleYearSelect:ne,handleYear:F,getModelMonthYear:ce}},qi=ze({compatConfig:{MODE:3},__name:"MonthPicker",props:{...yt},emits:["update:internal-model-value","overlay-closed","reset-flow","range-start","range-end","auto-apply","update-month-year","update-flow-step","mount","invalid-fixed-range","overlay-toggle"],setup(e,{expose:t,emit:n}){const a=n,r=qt(),l=lt(r,"yearMode"),i=e;Ke(()=>{i.shadow||a("mount",null)});const{groupedMonths:p,groupedYears:c,year:C,isDisabled:m,defaultedMultiCalendars:v,defaultedConfig:h,showYearPicker:k,modelValue:Y,presetDate:f,setHoverDate:S,selectMonth:I,selectYear:U,toggleYearPicker:A,handleYearSelect:q,handleYear:ae,getModelMonthYear:E}=Fi(i,a);return t({getSidebarProps:()=>({modelValue:Y,year:C,getModelMonthYear:E,selectMonth:I,selectYear:U,handleYear:ae}),presetDate:f,toggleYearPicker:B=>A(0,B)}),(B,ne)=>(P(),De(Sa,{"multi-calendars":d(v).count,collapse:B.collapse,stretch:""},{default:_e(({instance:F})=>[B.$slots["top-extra"]?ue(B.$slots,"top-extra",{key:0,value:B.internalModelValue}):j("",!0),B.$slots["month-year"]?ue(B.$slots,"month-year",We(Qe({key:1},{year:d(C),months:d(p)(F),years:d(c)(F),selectMonth:d(I),selectYear:d(U),instance:F}))):(P(),De(ya,{key:2,items:d(p)(F),"arrow-navigation":B.arrowNavigation,"is-last":B.autoApply&&!d(h).keepActionRow,"esc-close":B.escClose,height:d(h).modeHeight,config:B.config,"no-overlay-focus":!!(B.noOverlayFocus||B.textInput),"use-relative":"",type:"month",onSelected:N=>d(I)(N,F),onHoverValue:N=>d(S)(N,F)},je({header:_e(()=>[ot(Cr,Qe(B.$props,{items:d(c)(F),instance:F,"show-year-picker":d(k)[F],year:d(C)(F),"is-disabled":N=>d(m)(F,N),onHandleYear:N=>d(ae)(F,N),onYearSelect:N=>d(q)(N,F),onToggleYearPicker:N=>d(A)(F,N?.flow,N?.show)}),je({_:2},[Ye(d(l),(N,ie)=>({name:N,fn:_e(ce=>[ue(B.$slots,N,We(at(ce)))])}))]),1040,["items","instance","show-year-picker","year","is-disabled","onHandleYear","onYearSelect","onToggleYearPicker"])]),_:2},[B.$slots["month-overlay-value"]?{name:"item",fn:_e(({item:N})=>[ue(B.$slots,"month-overlay-value",{text:N.text,value:N.value})]),key:"0"}:void 0]),1032,["items","arrow-navigation","is-last","esc-close","height","config","no-overlay-focus","onSelected","onHoverValue"]))]),_:3},8,["multi-calendars","collapse"]))}}),Wi=(e,t)=>{const n=()=>{e.isTextInputDate&&(m.value=he(Q(e.startDate)))},{modelValue:a}=ba(e,t,n),r=Z(null),{defaultedHighlight:l,defaultedMultiDates:i,defaultedFilters:p,defaultedRange:c,propDates:C}=Se(e),m=Z();Ke(()=>{e.startDate&&(a.value&&e.focusStartDate||!a.value)&&(m.value=he(Q(e.startDate)))});const v=f=>Array.isArray(a.value)?a.value.some(S=>he(S)===f):a.value?he(a.value)===f:!1,h=f=>c.value.enabled&&Array.isArray(a.value)?$a(a.value,r.value,Y(f)):!1,k=G(()=>Zt(_n(e.yearRange,e.locale,e.reverseYears),f=>{const S=v(f.value),I=fa(f.value,ea(C.value.minDate),ea(C.value.maxDate))||p.value.years.includes(f.value),U=h(f.value)&&!S,A=Mn(l.value,f.value);return{active:S,disabled:I,isBetween:U,highlighted:A}})),Y=f=>_t(pt(ma(new Date)),f);return{groupedYears:k,modelValue:a,focusYear:m,setHoverValue:f=>{r.value=_t(pt(new Date),f)},selectYear:f=>{var S;if(t("update-month-year",{instance:0,year:f}),i.value.enabled)return a.value?Array.isArray(a.value)&&(((S=a.value)==null?void 0:S.map(I=>he(I))).includes(f)?a.value=a.value.filter(I=>he(I)!==f):a.value.push(_t(tt(Q()),f))):a.value=[_t(tt(ma(Q())),f)],t("auto-apply",!0);c.value.enabled?(a.value=Tn(a,Y(f),t),it().then(()=>{Ra(a.value,t,e.autoApply,e.modelAuto)})):(a.value=Y(f),t("auto-apply"))}}},Qi=ze({compatConfig:{MODE:3},__name:"YearPicker",props:{...yt},emits:["update:internal-model-value","reset-flow","range-start","range-end","auto-apply","update-month-year"],setup(e,{expose:t,emit:n}){const a=n,r=e,{groupedYears:l,modelValue:i,focusYear:p,selectYear:c,setHoverValue:C}=Wi(r,a),{defaultedConfig:m}=Se(r);return t({getSidebarProps:()=>({modelValue:i,selectYear:c})}),(v,h)=>(P(),W("div",null,[v.$slots["top-extra"]?ue(v.$slots,"top-extra",{key:0,value:v.internalModelValue}):j("",!0),v.$slots["month-year"]?ue(v.$slots,"month-year",We(Qe({key:1},{years:d(l),selectYear:d(c)}))):(P(),De(ya,{key:2,items:d(l),"is-last":v.autoApply&&!d(m).keepActionRow,height:d(m).modeHeight,config:v.config,"no-overlay-focus":!!(v.noOverlayFocus||v.textInput),"focus-value":d(p),type:"year","use-relative":"",onSelected:d(c),onHoverValue:d(C)},je({_:2},[v.$slots["year-overlay-value"]?{name:"item",fn:_e(({item:k})=>[ue(v.$slots,"year-overlay-value",{text:k.text,value:k.value})]),key:"0"}:void 0]),1032,["items","is-last","height","config","no-overlay-focus","focus-value","onSelected","onHoverValue"]))]))}}),zi={key:0,class:"dp__time_input"},Ui=["data-test","aria-label","onKeydown","onClick","onMousedown"],Xi=["aria-label","disabled","data-test","onKeydown","onClick"],Gi=["data-test","aria-label","onKeydown","onClick","onMousedown"],ji={key:0},Ki=["aria-label"],Ji=ze({compatConfig:{MODE:3},__name:"TimeInput",props:{hours:{type:Number,default:0},minutes:{type:Number,default:0},seconds:{type:Number,default:0},closeTimePickerBtn:{type:Object,default:null},order:{type:Number,default:0},disabledTimesConfig:{type:Function,default:null},validateTime:{type:Function,default:()=>!1},...yt},emits:["set-hours","set-minutes","update:hours","update:minutes","update:seconds","reset-flow","mounted","overlay-closed","overlay-opened","am-pm-change"],setup(e,{expose:t,emit:n}){const a=n,r=e,{setTimePickerElements:l,setTimePickerBackRef:i}=It(),{defaultedAriaLabels:p,defaultedTransitions:c,defaultedFilters:C,defaultedConfig:m,defaultedRange:v}=Se(r),{transitionName:h,showTransition:k}=ga(c),Y=ha({hours:!1,minutes:!1,seconds:!1}),f=Z("AM"),S=Z(null),I=Z([]),U=Z(),A=Z(!1);Ke(()=>{a("mounted")});const q=s=>Ce(new Date,{hours:s.hours,minutes:s.minutes,seconds:r.enableSeconds?s.seconds:0,milliseconds:0}),ae=G(()=>s=>H(s,r[s])||B(s,r[s])),E=G(()=>({hours:r.hours,minutes:r.minutes,seconds:r.seconds})),B=(s,L)=>v.value.enabled&&!v.value.disableTimeRangeValidation?!r.validateTime(s,L):!1,ne=(s,L)=>{if(v.value.enabled&&!v.value.disableTimeRangeValidation){const J=L?+r[`${s}Increment`]:-+r[`${s}Increment`],$=r[s]+J;return!r.validateTime(s,$)}return!1},F=G(()=>s=>!V(+r[s]+ +r[`${s}Increment`],s)||ne(s,!0)),N=G(()=>s=>!V(+r[s]-+r[`${s}Increment`],s)||ne(s,!1)),ie=(s,L)=>Xn(Ce(Q(),s),L),ce=(s,L)=>Go(Ce(Q(),s),L),pe=G(()=>({dp__time_col:!0,dp__time_col_block:!r.timePickerInline,dp__time_col_reg_block:!r.enableSeconds&&r.is24&&!r.timePickerInline,dp__time_col_reg_inline:!r.enableSeconds&&r.is24&&r.timePickerInline,dp__time_col_reg_with_button:!r.enableSeconds&&!r.is24,dp__time_col_sec:r.enableSeconds&&r.is24,dp__time_col_sec_with_button:r.enableSeconds&&!r.is24})),g=G(()=>{const s=[{type:"hours"}];return r.enableMinutes&&s.push({type:"",separator:!0},{type:"minutes"}),r.enableSeconds&&s.push({type:"",separator:!0},{type:"seconds"}),s}),D=G(()=>g.value.filter(s=>!s.separator)),y=G(()=>s=>{if(s==="hours"){const L=le(+r.hours);return{text:L<10?`0${L}`:`${L}`,value:L}}return{text:r[s]<10?`0${r[s]}`:`${r[s]}`,value:r[s]}}),H=(s,L)=>{var J;if(!r.disabledTimesConfig)return!1;const $=r.disabledTimesConfig(r.order,s==="hours"?L:void 0);return $[s]?!!((J=$[s])!=null&&J.includes(L)):!0},re=(s,L)=>L!=="hours"||f.value==="AM"?s:s+12,R=s=>{const L=r.is24?24:12,J=s==="hours"?L:60,$=+r[`${s}GridIncrement`],ge=s==="hours"&&!r.is24?$:0,x=[];for(let X=ge;X({active:!1,disabled:C.value.times[s].includes(X.value)||!V(X.value,s)||H(s,X.value)||B(s,X.value)}))},b=s=>s>=0?s:59,oe=s=>s>=0?s:23,V=(s,L)=>{const J=r.minTime?q(za(r.minTime)):null,$=r.maxTime?q(za(r.maxTime)):null,ge=q(za(E.value,L,L==="minutes"||L==="seconds"?b(s):oe(s)));return J&&$?(pa(ge,$)||Xt(ge,$))&&(Kt(ge,J)||Xt(ge,J)):J?Kt(ge,J)||Xt(ge,J):$?pa(ge,$)||Xt(ge,$):!0},M=s=>r[`no${s[0].toUpperCase()+s.slice(1)}Overlay`],o=s=>{M(s)||(Y[s]=!Y[s],Y[s]?(A.value=!0,a("overlay-opened",s)):(A.value=!1,a("overlay-closed",s)))},w=s=>s==="hours"?Tt:s==="minutes"?Rt:jt,z=()=>{U.value&&clearTimeout(U.value)},u=(s,L=!0,J)=>{const $=L?ie:ce,ge=L?+r[`${s}Increment`]:-+r[`${s}Increment`];V(+r[s]+ge,s)&&a(`update:${s}`,w(s)($({[s]:+r[s]},{[s]:+r[`${s}Increment`]}))),!(J!=null&&J.keyboard)&&m.value.timeArrowHoldThreshold&&(U.value=setTimeout(()=>{u(s,L)},m.value.timeArrowHoldThreshold))},le=s=>r.is24?s:(s>=12?f.value="PM":f.value="AM",ti(s)),fe=()=>{f.value==="PM"?(f.value="AM",a("update:hours",r.hours-12)):(f.value="PM",a("update:hours",r.hours+12)),a("am-pm-change",f.value)},Ve=s=>{Y[s]=!0},T=(s,L,J)=>{if(s&&r.arrowNavigation){Array.isArray(I.value[L])?I.value[L][J]=s:I.value[L]=[s];const $=I.value.reduce((ge,x)=>x.map((X,de)=>[...ge[de]||[],x[de]]),[]);i(r.closeTimePickerBtn),S.value&&($[1]=$[1].concat(S.value)),l($,r.order)}},K=(s,L)=>(o(s),a(`update:${s}`,L));return t({openChildCmp:Ve}),(s,L)=>{var J;return s.disabled?j("",!0):(P(),W("div",zi,[(P(!0),W(we,null,Ye(g.value,($,ge)=>{var x,X,de;return P(),W("div",{key:ge,class:ke(pe.value)},[$.separator?(P(),W(we,{key:0},[A.value?j("",!0):(P(),W(we,{key:0},[Dt(":")],64))],64)):(P(),W(we,{key:1},[ye("button",{ref_for:!0,ref:be=>T(be,ge,0),type:"button",class:ke({dp__btn:!0,dp__inc_dec_button:!s.timePickerInline,dp__inc_dec_button_inline:s.timePickerInline,dp__tp_inline_btn_top:s.timePickerInline,dp__inc_dec_button_disabled:F.value($.type),"dp--hidden-el":A.value}),"data-test":`${$.type}-time-inc-btn-${r.order}`,"aria-label":(x=d(p))==null?void 0:x.incrementValue($.type),tabindex:"0",onKeydown:be=>d(et)(be,()=>u($.type,!0,{keyboard:!0}),!0),onClick:be=>d(m).timeArrowHoldThreshold?void 0:u($.type,!0),onMousedown:be=>d(m).timeArrowHoldThreshold?u($.type,!0):void 0,onMouseup:z},[r.timePickerInline?(P(),W(we,{key:1},[s.$slots["tp-inline-arrow-up"]?ue(s.$slots,"tp-inline-arrow-up",{key:0}):(P(),W(we,{key:1},[L[2]||(L[2]=ye("span",{class:"dp__tp_inline_btn_bar dp__tp_btn_in_l"},null,-1)),L[3]||(L[3]=ye("span",{class:"dp__tp_inline_btn_bar dp__tp_btn_in_r"},null,-1))],64))],64)):(P(),W(we,{key:0},[s.$slots["arrow-up"]?ue(s.$slots,"arrow-up",{key:0}):j("",!0),s.$slots["arrow-up"]?j("",!0):(P(),De(d(gn),{key:1}))],64))],42,Ui),ye("button",{ref_for:!0,ref:be=>T(be,ge,1),type:"button","aria-label":`${y.value($.type).text}-${(X=d(p))==null?void 0:X.openTpOverlay($.type)}`,class:ke({dp__time_display:!0,dp__time_display_block:!s.timePickerInline,dp__time_display_inline:s.timePickerInline,"dp--time-invalid":ae.value($.type),"dp--time-overlay-btn":!ae.value($.type),"dp--hidden-el":A.value}),disabled:M($.type),tabindex:"0","data-test":`${$.type}-toggle-overlay-btn-${r.order}`,onKeydown:be=>d(et)(be,()=>o($.type),!0),onClick:be=>o($.type)},[s.$slots[$.type]?ue(s.$slots,$.type,{key:0,text:y.value($.type).text,value:y.value($.type).value}):j("",!0),s.$slots[$.type]?j("",!0):(P(),W(we,{key:1},[Dt(Ge(y.value($.type).text),1)],64))],42,Xi),ye("button",{ref_for:!0,ref:be=>T(be,ge,2),type:"button",class:ke({dp__btn:!0,dp__inc_dec_button:!s.timePickerInline,dp__inc_dec_button_inline:s.timePickerInline,dp__tp_inline_btn_bottom:s.timePickerInline,dp__inc_dec_button_disabled:N.value($.type),"dp--hidden-el":A.value}),"data-test":`${$.type}-time-dec-btn-${r.order}`,"aria-label":(de=d(p))==null?void 0:de.decrementValue($.type),tabindex:"0",onKeydown:be=>d(et)(be,()=>u($.type,!1,{keyboard:!0}),!0),onClick:be=>d(m).timeArrowHoldThreshold?void 0:u($.type,!1),onMousedown:be=>d(m).timeArrowHoldThreshold?u($.type,!1):void 0,onMouseup:z},[r.timePickerInline?(P(),W(we,{key:1},[s.$slots["tp-inline-arrow-down"]?ue(s.$slots,"tp-inline-arrow-down",{key:0}):(P(),W(we,{key:1},[L[4]||(L[4]=ye("span",{class:"dp__tp_inline_btn_bar dp__tp_btn_in_l"},null,-1)),L[5]||(L[5]=ye("span",{class:"dp__tp_inline_btn_bar dp__tp_btn_in_r"},null,-1))],64))],64)):(P(),W(we,{key:0},[s.$slots["arrow-down"]?ue(s.$slots,"arrow-down",{key:0}):j("",!0),s.$slots["arrow-down"]?j("",!0):(P(),De(d(bn),{key:1}))],64))],42,Gi)],64))],2)}),128)),s.is24?j("",!0):(P(),W("div",ji,[s.$slots["am-pm-button"]?ue(s.$slots,"am-pm-button",{key:0,toggle:fe,value:f.value}):j("",!0),s.$slots["am-pm-button"]?j("",!0):(P(),W("button",{key:1,ref_key:"amPmButton",ref:S,type:"button",class:"dp__pm_am_button",role:"button","aria-label":(J=d(p))==null?void 0:J.amPmButton,tabindex:"0",onClick:fe,onKeydown:L[0]||(L[0]=$=>d(et)($,()=>fe(),!0))},Ge(f.value),41,Ki))])),(P(!0),W(we,null,Ye(D.value,($,ge)=>(P(),De(ta,{key:ge,name:d(h)(Y[$.type]),css:d(k)},{default:_e(()=>{var x,X;return[Y[$.type]?(P(),De(ya,{key:0,items:R($.type),"is-last":s.autoApply&&!d(m).keepActionRow,"esc-close":s.escClose,type:$.type,"text-input":s.textInput,config:s.config,"arrow-navigation":s.arrowNavigation,"aria-labels":s.ariaLabels,"overlay-label":(X=(x=d(p)).timeOverlay)==null?void 0:X.call(x,$.type),onSelected:de=>K($.type,de),onToggle:de=>o($.type),onResetFlow:L[1]||(L[1]=de=>s.$emit("reset-flow"))},je({"button-icon":_e(()=>[s.$slots["clock-icon"]?ue(s.$slots,"clock-icon",{key:0}):j("",!0),s.$slots["clock-icon"]?j("",!0):(P(),De(Oa(s.timePickerInline?d(aa):d(yn)),{key:1}))]),_:2},[s.$slots[`${$.type}-overlay-value`]?{name:"item",fn:_e(({item:de})=>[ue(s.$slots,`${$.type}-overlay-value`,{text:de.text,value:de.value})]),key:"0"}:void 0,s.$slots[`${$.type}-overlay-header`]?{name:"header",fn:_e(()=>[ue(s.$slots,`${$.type}-overlay-header`,{toggle:()=>o($.type)})]),key:"1"}:void 0]),1032,["items","is-last","esc-close","type","text-input","config","arrow-navigation","aria-labels","overlay-label","onSelected","onToggle"])):j("",!0)]}),_:2},1032,["name","css"]))),128))]))}}}),Zi={class:"dp--tp-wrap"},es=["aria-label","tabindex"],ts=["role","aria-label","tabindex"],as=["aria-label"],Sr=ze({compatConfig:{MODE:3},__name:"TimePicker",props:{hours:{type:[Number,Array],default:0},minutes:{type:[Number,Array],default:0},seconds:{type:[Number,Array],default:0},disabledTimesConfig:{type:Function,default:null},validateTime:{type:Function,default:()=>!1},...yt},emits:["update:hours","update:minutes","update:seconds","mount","reset-flow","overlay-opened","overlay-closed","am-pm-change"],setup(e,{expose:t,emit:n}){const a=n,r=e,{buildMatrix:l,setTimePicker:i}=It(),p=qt(),{defaultedTransitions:c,defaultedAriaLabels:C,defaultedTextInput:m,defaultedConfig:v,defaultedRange:h}=Se(r),{transitionName:k,showTransition:Y}=ga(c),{hideNavigationButtons:f}=Ia(),S=Z(null),I=Z(null),U=Z([]),A=Z(null),q=Z(!1);Ke(()=>{a("mount"),!r.timePicker&&r.arrowNavigation?l([Fe(S.value)],"time"):i(!0,r.timePicker)});const ae=G(()=>h.value.enabled&&r.modelAuto?yr(r.internalModelValue):!0),E=Z(!1),B=R=>({hours:Array.isArray(r.hours)?r.hours[R]:r.hours,minutes:Array.isArray(r.minutes)?r.minutes[R]:r.minutes,seconds:Array.isArray(r.seconds)?r.seconds[R]:r.seconds}),ne=G(()=>{const R=[];if(h.value.enabled)for(let b=0;b<2;b++)R.push(B(b));else R.push(B(0));return R}),F=(R,b=!1,oe="")=>{b||a("reset-flow"),E.value=R,a(R?"overlay-opened":"overlay-closed",Xe.time),r.arrowNavigation&&i(R),it(()=>{oe!==""&&U.value[0]&&U.value[0].openChildCmp(oe)})},N=G(()=>({dp__btn:!0,dp__button:!0,dp__button_bottom:r.autoApply&&!v.value.keepActionRow})),ie=lt(p,"timePicker"),ce=(R,b,oe)=>h.value.enabled?b===0?[R,ne.value[1][oe]]:[ne.value[0][oe],R]:R,pe=R=>{a("update:hours",R)},g=R=>{a("update:minutes",R)},D=R=>{a("update:seconds",R)},y=()=>{if(A.value&&!m.value.enabled&&!r.noOverlayFocus){const R=gr(A.value);R&&R.focus({preventScroll:!0})}},H=R=>{q.value=!1,a("overlay-closed",R)},re=R=>{q.value=!0,a("overlay-opened",R)};return t({toggleTimePicker:F}),(R,b)=>{var oe;return P(),W("div",Zi,[!R.timePicker&&!R.timePickerInline?Ma((P(),W("button",{key:0,ref_key:"openTimePickerBtn",ref:S,type:"button",class:ke({...N.value,"dp--hidden-el":E.value}),"aria-label":(oe=d(C))==null?void 0:oe.openTimePicker,tabindex:R.noOverlayFocus?void 0:0,"data-test":"open-time-picker-btn",onKeydown:b[0]||(b[0]=V=>d(et)(V,()=>F(!0))),onClick:b[1]||(b[1]=V=>F(!0))},[R.$slots["clock-icon"]?ue(R.$slots,"clock-icon",{key:0}):j("",!0),R.$slots["clock-icon"]?j("",!0):(P(),De(d(yn),{key:1}))],42,es)),[[Da,!d(f)(R.hideNavigation,"time")]]):j("",!0),ot(ta,{name:d(k)(E.value),css:d(Y)&&!R.timePickerInline},{default:_e(()=>{var V,M;return[E.value||R.timePicker||R.timePickerInline?(P(),W("div",{key:0,ref_key:"overlayRef",ref:A,role:R.timePickerInline?void 0:"dialog",class:ke({dp__overlay:!R.timePickerInline,"dp--overlay-absolute":!r.timePicker&&!R.timePickerInline,"dp--overlay-relative":r.timePicker}),style:dt(R.timePicker?{height:`${d(v).modeHeight}px`}:void 0),"aria-label":(V=d(C))==null?void 0:V.timePicker,tabindex:R.timePickerInline?void 0:0},[ye("div",{class:ke(R.timePickerInline?"dp__time_picker_inline_container":"dp__overlay_container dp__container_flex dp__time_picker_overlay_container"),style:{display:"flex"}},[R.$slots["time-picker-overlay"]?ue(R.$slots,"time-picker-overlay",{key:0,hours:e.hours,minutes:e.minutes,seconds:e.seconds,setHours:pe,setMinutes:g,setSeconds:D}):j("",!0),R.$slots["time-picker-overlay"]?j("",!0):(P(),W("div",{key:1,class:ke(R.timePickerInline?"dp__flex":"dp__overlay_row dp__flex_row")},[(P(!0),W(we,null,Ye(ne.value,(o,w)=>Ma((P(),De(Ji,Qe({key:w,ref_for:!0},{...R.$props,order:w,hours:o.hours,minutes:o.minutes,seconds:o.seconds,closeTimePickerBtn:I.value,disabledTimesConfig:e.disabledTimesConfig,disabled:w===0?d(h).fixedStart:d(h).fixedEnd},{ref_for:!0,ref_key:"timeInputRefs",ref:U,"validate-time":(z,u)=>e.validateTime(z,ce(u,w,z)),"onUpdate:hours":z=>pe(ce(z,w,"hours")),"onUpdate:minutes":z=>g(ce(z,w,"minutes")),"onUpdate:seconds":z=>D(ce(z,w,"seconds")),onMounted:y,onOverlayClosed:H,onOverlayOpened:re,onAmPmChange:b[2]||(b[2]=z=>R.$emit("am-pm-change",z))}),je({_:2},[Ye(d(ie),(z,u)=>({name:z,fn:_e(le=>[ue(R.$slots,z,Qe({ref_for:!0},le))])}))]),1040,["validate-time","onUpdate:hours","onUpdate:minutes","onUpdate:seconds"])),[[Da,w===0?!0:ae.value]])),128))],2)),!R.timePicker&&!R.timePickerInline?Ma((P(),W("button",{key:2,ref_key:"closeTimePickerBtn",ref:I,type:"button",class:ke({...N.value,"dp--hidden-el":q.value}),"aria-label":(M=d(C))==null?void 0:M.closeTimePicker,tabindex:"0",onKeydown:b[3]||(b[3]=o=>d(et)(o,()=>F(!1))),onClick:b[4]||(b[4]=o=>F(!1))},[R.$slots["calendar-icon"]?ue(R.$slots,"calendar-icon",{key:0}):j("",!0),R.$slots["calendar-icon"]?j("",!0):(P(),De(d(aa),{key:1}))],42,as)),[[Da,!d(f)(R.hideNavigation,"time")]]):j("",!0)],2)],14,ts)):j("",!0)]}),_:3},8,["name","css"])])}}}),Rr=(e,t,n,a)=>{const{defaultedRange:r}=Se(e),l=(A,q)=>Array.isArray(t[A])?t[A][q]:t[A],i=A=>e.enableSeconds?Array.isArray(t.seconds)?t.seconds[A]:t.seconds:0,p=(A,q)=>A?q!==void 0?St(A,l("hours",q),l("minutes",q),i(q)):St(A,t.hours,t.minutes,i()):mr(Q(),i(q)),c=(A,q)=>{t[A]=q},C=G(()=>e.modelAuto&&r.value.enabled?Array.isArray(n.value)?n.value.length>1:!1:r.value.enabled),m=(A,q)=>{const ae=Object.fromEntries(Object.keys(t).map(E=>E===A?[E,q]:[E,t[E]].slice()));if(C.value&&!r.value.disableTimeRangeValidation){const E=ne=>n.value?St(n.value[ne],ae.hours[ne],ae.minutes[ne],ae.seconds[ne]):null,B=ne=>vr(n.value[ne],0);return!(Me(E(0),E(1))&&(Kt(E(0),B(1))||pa(E(1),B(0))))}return!0},v=(A,q)=>{m(A,q)&&(c(A,q),a&&a())},h=A=>{v("hours",A)},k=A=>{v("minutes",A)},Y=A=>{v("seconds",A)},f=(A,q,ae,E)=>{q&&h(A),!q&&!ae&&k(A),ae&&Y(A),n.value&&E(n.value)},S=A=>{if(A){const q=Array.isArray(A),ae=q?[+A[0].hours,+A[1].hours]:+A.hours,E=q?[+A[0].minutes,+A[1].minutes]:+A.minutes,B=q?[+A[0].seconds,+A[1].seconds]:+A.seconds;c("hours",ae),c("minutes",E),e.enableSeconds&&c("seconds",B)}},I=(A,q)=>{const ae={hours:Array.isArray(t.hours)?t.hours[A]:t.hours,disabledArr:[]};return(q||q===0)&&(ae.hours=q),Array.isArray(e.disabledTimes)&&(ae.disabledArr=r.value.enabled&&Array.isArray(e.disabledTimes[A])?e.disabledTimes[A]:e.disabledTimes),ae},U=G(()=>(A,q)=>{var ae;if(Array.isArray(e.disabledTimes)){const{disabledArr:E,hours:B}=I(A,q),ne=E.filter(F=>+F.hours===B);return((ae=ne[0])==null?void 0:ae.minutes)==="*"?{hours:[B],minutes:void 0,seconds:void 0}:{hours:[],minutes:ne?.map(F=>+F.minutes)??[],seconds:ne?.map(F=>F.seconds?+F.seconds:void 0)??[]}}return{hours:[],minutes:[],seconds:[]}});return{setTime:c,updateHours:h,updateMinutes:k,updateSeconds:Y,getSetDateTime:p,updateTimeValues:f,getSecondsValue:i,assignStartTime:S,validateTime:m,disabledTimesConfig:U}},ns=(e,t)=>{const n=()=>{e.isTextInputDate&&q()},{modelValue:a,time:r}=ba(e,t,n),{defaultedStartTime:l,defaultedRange:i,defaultedTz:p}=Se(e),{updateTimeValues:c,getSetDateTime:C,setTime:m,assignStartTime:v,disabledTimesConfig:h,validateTime:k}=Rr(e,r,a,Y);function Y(){t("update-flow-step")}const f=E=>{const{hours:B,minutes:ne,seconds:F}=E;return{hours:+B,minutes:+ne,seconds:F?+F:0}},S=()=>{if(e.startTime){if(Array.isArray(e.startTime)){const B=f(e.startTime[0]),ne=f(e.startTime[1]);return[Ce(Q(),B),Ce(Q(),ne)]}const E=f(e.startTime);return Ce(Q(),E)}return i.value.enabled?[null,null]:null},I=()=>{if(i.value.enabled){const[E,B]=S();a.value=[nt(C(E,0),p.value.timezone),nt(C(B,1),p.value.timezone)]}else a.value=nt(C(S()),p.value.timezone)},U=E=>Array.isArray(E)?[Ft(Q(E[0])),Ft(Q(E[1]))]:[Ft(E??Q())],A=(E,B,ne)=>{m("hours",E),m("minutes",B),m("seconds",e.enableSeconds?ne:0)},q=()=>{const[E,B]=U(a.value);return i.value.enabled?A([E.hours,B.hours],[E.minutes,B.minutes],[E.seconds,B.seconds]):A(E.hours,E.minutes,E.seconds)};Ke(()=>{if(!e.shadow)return v(l.value),a.value?q():I()});const ae=()=>{Array.isArray(a.value)?a.value=a.value.map((E,B)=>E&&C(E,B)):a.value=C(a.value),t("time-update")};return{modelValue:a,time:r,disabledTimesConfig:h,updateTime:(E,B=!0,ne=!1)=>{c(E,B,ne,ae)},validateTime:k}},rs=ze({compatConfig:{MODE:3},__name:"TimePickerSolo",props:{...yt},emits:["update:internal-model-value","time-update","am-pm-change","mount","reset-flow","update-flow-step","overlay-toggle"],setup(e,{expose:t,emit:n}){const a=n,r=e,l=qt(),i=lt(l,"timePicker"),p=Z(null),{time:c,modelValue:C,disabledTimesConfig:m,updateTime:v,validateTime:h}=ns(r,a);return Ke(()=>{r.shadow||a("mount",null)}),t({getSidebarProps:()=>({modelValue:C,time:c,updateTime:v}),toggleTimePicker:(k,Y=!1,f="")=>{var S;(S=p.value)==null||S.toggleTimePicker(k,Y,f)}}),(k,Y)=>(P(),De(Sa,{"multi-calendars":0,stretch:""},{default:_e(()=>[ot(Sr,Qe({ref_key:"tpRef",ref:p},k.$props,{hours:d(c).hours,minutes:d(c).minutes,seconds:d(c).seconds,"internal-model-value":k.internalModelValue,"disabled-times-config":d(m),"validate-time":d(h),"onUpdate:hours":Y[0]||(Y[0]=f=>d(v)(f)),"onUpdate:minutes":Y[1]||(Y[1]=f=>d(v)(f,!1)),"onUpdate:seconds":Y[2]||(Y[2]=f=>d(v)(f,!1,!0)),onAmPmChange:Y[3]||(Y[3]=f=>k.$emit("am-pm-change",f)),onResetFlow:Y[4]||(Y[4]=f=>k.$emit("reset-flow")),onOverlayClosed:Y[5]||(Y[5]=f=>k.$emit("overlay-toggle",{open:!1,overlay:f})),onOverlayOpened:Y[6]||(Y[6]=f=>k.$emit("overlay-toggle",{open:!0,overlay:f}))}),je({_:2},[Ye(d(i),(f,S)=>({name:f,fn:_e(I=>[ue(k.$slots,f,We(at(I)))])}))]),1040,["hours","minutes","seconds","internal-model-value","disabled-times-config","validate-time"])]),_:3}))}}),ls={class:"dp--header-wrap"},os={key:0,class:"dp__month_year_wrap"},is={key:0},ss={class:"dp__month_year_wrap"},us=["data-dp-element","aria-label","data-test","onClick","onKeydown"],ds=ze({compatConfig:{MODE:3},__name:"DpHeader",props:{month:{type:Number,default:0},year:{type:Number,default:0},instance:{type:Number,default:0},years:{type:Array,default:()=>[]},months:{type:Array,default:()=>[]},...yt},emits:["update-month-year","mount","reset-flow","overlay-closed","overlay-opened"],setup(e,{expose:t,emit:n}){const a=n,r=e,{defaultedTransitions:l,defaultedAriaLabels:i,defaultedMultiCalendars:p,defaultedFilters:c,defaultedConfig:C,defaultedHighlight:m,propDates:v,defaultedUI:h}=Se(r),{transitionName:k,showTransition:Y}=ga(l),{buildMatrix:f}=It(),{handleMonthYearChange:S,isDisabled:I,updateMonthYear:U}=Yi(r,a),{showLeftIcon:A,showRightIcon:q}=Ia(),ae=Z(!1),E=Z(!1),B=Z(!1),ne=Z([null,null,null,null]);Ke(()=>{a("mount")});const F=M=>({get:()=>r[M],set:o=>{const w=M===vt.month?vt.year:vt.month;a("update-month-year",{[M]:o,[w]:r[w]}),M===vt.month?H(!0):re(!0)}}),N=G(F(vt.month)),ie=G(F(vt.year)),ce=G(()=>M=>({month:r.month,year:r.year,items:M===vt.month?r.months:r.years,instance:r.instance,updateMonthYear:U,toggle:M===vt.month?H:re})),pe=G(()=>r.months.find(o=>o.value===r.month)||{text:"",value:0}),g=G(()=>Zt(r.months,M=>{const o=r.month===M.value,w=fa(M.value,wr(r.year,v.value.minDate),_r(r.year,v.value.maxDate))||c.value.months.includes(M.value),z=Tr(m.value,M.value,r.year);return{active:o,disabled:w,highlighted:z}})),D=G(()=>Zt(r.years,M=>{const o=r.year===M.value,w=fa(M.value,ea(v.value.minDate),ea(v.value.maxDate))||c.value.years.includes(M.value),z=Mn(m.value,M.value);return{active:o,disabled:w,highlighted:z}})),y=(M,o,w)=>{w!==void 0?M.value=w:M.value=!M.value,M.value?(B.value=!0,a("overlay-opened",o)):(B.value=!1,a("overlay-closed",o))},H=(M=!1,o)=>{R(M),y(ae,Xe.month,o)},re=(M=!1,o)=>{R(M),y(E,Xe.year,o)},R=M=>{M||a("reset-flow")},b=(M,o)=>{r.arrowNavigation&&(ne.value[o]=Fe(M),f(ne.value,"monthYear"))},oe=G(()=>{var M,o,w,z,u,le;return[{type:vt.month,index:1,toggle:H,modelValue:N.value,updateModelValue:fe=>N.value=fe,text:pe.value.text,showSelectionGrid:ae.value,items:g.value,ariaLabel:(M=i.value)==null?void 0:M.openMonthsOverlay,overlayLabel:((w=(o=i.value).monthPicker)==null?void 0:w.call(o,!0))??void 0},{type:vt.year,index:2,toggle:re,modelValue:ie.value,updateModelValue:fe=>ie.value=fe,text:br(r.year,r.locale),showSelectionGrid:E.value,items:D.value,ariaLabel:(z=i.value)==null?void 0:z.openYearsOverlay,overlayLabel:((le=(u=i.value).yearPicker)==null?void 0:le.call(u,!0))??void 0}]}),V=G(()=>r.disableYearSelect?[oe.value[0]]:r.yearFirst?[...oe.value].reverse():oe.value);return t({toggleMonthPicker:H,toggleYearPicker:re,handleMonthYearChange:S}),(M,o)=>{var w,z,u,le,fe,Ve;return P(),W("div",ls,[M.$slots["month-year"]?(P(),W("div",os,[ue(M.$slots,"month-year",We(at({month:e.month,year:e.year,months:e.months,years:e.years,updateMonthYear:d(U),handleMonthYearChange:d(S),instance:e.instance})))])):(P(),W(we,{key:1},[M.$slots["top-extra"]?(P(),W("div",is,[ue(M.$slots,"top-extra",{value:M.internalModelValue})])):j("",!0),ye("div",ss,[d(A)(d(p),e.instance)&&!M.vertical?(P(),De(da,{key:0,"aria-label":(w=d(i))==null?void 0:w.prevMonth,disabled:d(I)(!1),class:ke((z=d(h))==null?void 0:z.navBtnPrev),"el-name":"action-prev",onActivate:o[0]||(o[0]=T=>d(S)(!1,!0)),onSetRef:o[1]||(o[1]=T=>b(T,0))},{default:_e(()=>[M.$slots["arrow-left"]?ue(M.$slots,"arrow-left",{key:0}):j("",!0),M.$slots["arrow-left"]?j("",!0):(P(),De(d(fn),{key:1}))]),_:3},8,["aria-label","disabled","class"])):j("",!0),ye("div",{class:ke(["dp__month_year_wrap",{dp__year_disable_select:M.disableYearSelect}])},[(P(!0),W(we,null,Ye(V.value,(T,K)=>(P(),W(we,{key:T.type},[ye("button",{ref_for:!0,ref:s=>b(s,K+1),type:"button","data-dp-element":`overlay-${T.type}`,class:ke(["dp__btn dp__month_year_select",{"dp--hidden-el":B.value}]),"aria-label":`${T.text}-${T.ariaLabel}`,"data-test":`${T.type}-toggle-overlay-${e.instance}`,onClick:T.toggle,onKeydown:s=>d(et)(s,()=>T.toggle(),!0)},[M.$slots[T.type]?ue(M.$slots,T.type,{key:0,text:T.text,value:r[T.type]}):j("",!0),M.$slots[T.type]?j("",!0):(P(),W(we,{key:1},[Dt(Ge(T.text),1)],64))],42,us),ot(ta,{name:d(k)(T.showSelectionGrid),css:d(Y)},{default:_e(()=>[T.showSelectionGrid?(P(),De(ya,{key:0,items:T.items,"arrow-navigation":M.arrowNavigation,"hide-navigation":M.hideNavigation,"is-last":M.autoApply&&!d(C).keepActionRow,"skip-button-ref":!1,config:M.config,type:T.type,"header-refs":[],"esc-close":M.escClose,"menu-wrap-ref":M.menuWrapRef,"text-input":M.textInput,"aria-labels":M.ariaLabels,"overlay-label":T.overlayLabel,onSelected:T.updateModelValue,onToggle:T.toggle},je({"button-icon":_e(()=>[M.$slots["calendar-icon"]?ue(M.$slots,"calendar-icon",{key:0}):j("",!0),M.$slots["calendar-icon"]?j("",!0):(P(),De(d(aa),{key:1}))]),_:2},[M.$slots[`${T.type}-overlay-value`]?{name:"item",fn:_e(({item:s})=>[ue(M.$slots,`${T.type}-overlay-value`,{text:s.text,value:s.value})]),key:"0"}:void 0,M.$slots[`${T.type}-overlay`]?{name:"overlay",fn:_e(()=>[ue(M.$slots,`${T.type}-overlay`,Qe({ref_for:!0},ce.value(T.type)))]),key:"1"}:void 0,M.$slots[`${T.type}-overlay-header`]?{name:"header",fn:_e(()=>[ue(M.$slots,`${T.type}-overlay-header`,{toggle:T.toggle})]),key:"2"}:void 0]),1032,["items","arrow-navigation","hide-navigation","is-last","config","type","esc-close","menu-wrap-ref","text-input","aria-labels","overlay-label","onSelected","onToggle"])):j("",!0)]),_:2},1032,["name","css"])],64))),128))],2),d(A)(d(p),e.instance)&&M.vertical?(P(),De(da,{key:1,"aria-label":(u=d(i))==null?void 0:u.prevMonth,"el-name":"action-prev",disabled:d(I)(!1),class:ke((le=d(h))==null?void 0:le.navBtnPrev),onActivate:o[2]||(o[2]=T=>d(S)(!1,!0))},{default:_e(()=>[M.$slots["arrow-up"]?ue(M.$slots,"arrow-up",{key:0}):j("",!0),M.$slots["arrow-up"]?j("",!0):(P(),De(d(gn),{key:1}))]),_:3},8,["aria-label","disabled","class"])):j("",!0),d(q)(d(p),e.instance)?(P(),De(da,{key:2,ref:"rightIcon","el-name":"action-next",disabled:d(I)(!0),"aria-label":(fe=d(i))==null?void 0:fe.nextMonth,class:ke((Ve=d(h))==null?void 0:Ve.navBtnNext),onActivate:o[3]||(o[3]=T=>d(S)(!0,!0)),onSetRef:o[4]||(o[4]=T=>b(T,M.disableYearSelect?2:3))},{default:_e(()=>[M.$slots[M.vertical?"arrow-down":"arrow-right"]?ue(M.$slots,M.vertical?"arrow-down":"arrow-right",{key:0}):j("",!0),M.$slots[M.vertical?"arrow-down":"arrow-right"]?j("",!0):(P(),De(Oa(M.vertical?d(bn):d(hn)),{key:1}))]),_:3},8,["disabled","aria-label","class"])):j("",!0)])],64))])}}}),cs={class:"dp__calendar_header",role:"row"},vs={key:0,class:"dp__calendar_header_item",role:"gridcell"},ms=["aria-label"],ps={key:0,class:"dp__calendar_item dp__week_num",role:"gridcell"},fs={class:"dp__cell_inner"},hs=["id","aria-pressed","aria-disabled","aria-label","tabindex","data-test","onClick","onTouchend","onKeydown","onMouseenter","onMouseleave","onMousedown"],ys=ze({compatConfig:{MODE:3},__name:"DpCalendar",props:{mappedDates:{type:Array,default:()=>[]},instance:{type:Number,default:0},month:{type:Number,default:0},year:{type:Number,default:0},...yt},emits:["select-date","set-hover-date","handle-scroll","mount","handle-swipe","handle-space","tooltip-open","tooltip-close"],setup(e,{expose:t,emit:n}){const a=n,r=e,{buildMultiLevelMatrix:l}=It(),{defaultedTransitions:i,defaultedConfig:p,defaultedAriaLabels:c,defaultedMultiCalendars:C,defaultedWeekNumbers:m,defaultedMultiDates:v,defaultedUI:h}=Se(r),k=Z(null),Y=Z({bottom:"",left:"",transform:""}),f=Z([]),S=Z(null),I=Z(!0),U=Z(""),A=Z({startX:0,endX:0,startY:0,endY:0}),q=Z([]),ae=Z({left:"50%"}),E=Z(!1),B=G(()=>r.calendar?r.calendar(r.mappedDates):r.mappedDates),ne=G(()=>r.dayNames?Array.isArray(r.dayNames)?r.dayNames:r.dayNames(r.locale,+r.weekStart):ei(r.formatLocale,r.locale,+r.weekStart));Ke(()=>{a("mount",{cmp:"calendar",refs:f}),p.value.noSwipe||S.value&&(S.value.addEventListener("touchstart",b,{passive:!1}),S.value.addEventListener("touchend",oe,{passive:!1}),S.value.addEventListener("touchmove",V,{passive:!1})),r.monthChangeOnScroll&&S.value&&S.value.addEventListener("wheel",w,{passive:!1})});const F=T=>T?r.vertical?"vNext":"next":r.vertical?"vPrevious":"previous",N=(T,K)=>{if(r.transitions){const s=tt(Mt(Q(),r.month,r.year));U.value=Ne(tt(Mt(Q(),T,K)),s)?i.value[F(!0)]:i.value[F(!1)],I.value=!1,it(()=>{I.value=!0})}},ie=G(()=>({...h.value.calendar??{}})),ce=G(()=>T=>{const K=ai(T);return{dp__marker_dot:K.type==="dot",dp__marker_line:K.type==="line"}}),pe=G(()=>T=>Me(T,k.value)),g=G(()=>({dp__calendar:!0,dp__calendar_next:C.value.count>0&&r.instance!==0})),D=G(()=>T=>r.hideOffsetDates?T.current:!0),y=async(T,K)=>{const{width:s,height:L}=T.getBoundingClientRect();k.value=K.value;let J={left:`${s/2}px`},$=-50;if(await it(),q.value[0]){const{left:ge,width:x}=q.value[0].getBoundingClientRect();ge<0&&(J={left:"0"},$=0,ae.value.left=`${s/2}px`),window.innerWidth{var L,J,$;const ge=Fe(f.value[K][s]);ge&&((L=T.marker)!=null&&L.customPosition&&($=(J=T.marker)==null?void 0:J.tooltip)!=null&&$.length?Y.value=T.marker.customPosition(ge):await y(ge,T),a("tooltip-open",T.marker))},re=async(T,K,s)=>{var L,J;if(E.value&&v.value.enabled&&v.value.dragSelect)return a("select-date",T);a("set-hover-date",T),(J=(L=T.marker)==null?void 0:L.tooltip)!=null&&J.length&&await H(T,K,s)},R=T=>{k.value&&(k.value=null,Y.value=JSON.parse(JSON.stringify({bottom:"",left:"",transform:""})),a("tooltip-close",T.marker))},b=T=>{A.value.startX=T.changedTouches[0].screenX,A.value.startY=T.changedTouches[0].screenY},oe=T=>{A.value.endX=T.changedTouches[0].screenX,A.value.endY=T.changedTouches[0].screenY,M()},V=T=>{r.vertical&&!r.inline&&T.preventDefault()},M=()=>{const T=r.vertical?"Y":"X";Math.abs(A.value[`start${T}`]-A.value[`end${T}`])>10&&a("handle-swipe",A.value[`start${T}`]>A.value[`end${T}`]?"right":"left")},o=(T,K,s)=>{T&&(Array.isArray(f.value[K])?f.value[K][s]=T:f.value[K]=[T]),r.arrowNavigation&&l(f.value,"calendar")},w=T=>{r.monthChangeOnScroll&&(T.preventDefault(),a("handle-scroll",T))},z=T=>m.value.type==="local"?vn(T.value,{weekStartsOn:+r.weekStart}):m.value.type==="iso"?dn(T.value):typeof m.value.type=="function"?m.value.type(T.value):"",u=T=>{const K=T[0];return m.value.hideOnOffsetDates?T.some(s=>s.current)?z(K):"":z(K)},le=(T,K,s=!0)=>{s&&Vn()||!s&&!Vn()||v.value.enabled||(Yt(T,p.value),a("select-date",K))},fe=T=>{Yt(T,p.value)},Ve=T=>{v.value.enabled&&v.value.dragSelect?(E.value=!0,a("select-date",T)):v.value.enabled&&a("select-date",T)};return t({triggerTransition:N}),(T,K)=>(P(),W("div",{class:ke(g.value)},[ye("div",{ref_key:"calendarWrapRef",ref:S,class:ke(ie.value),role:"grid"},[ye("div",cs,[T.weekNumbers?(P(),W("div",vs,Ge(T.weekNumName),1)):j("",!0),(P(!0),W(we,null,Ye(ne.value,(s,L)=>{var J,$;return P(),W("div",{key:L,class:"dp__calendar_header_item",role:"gridcell","data-test":"calendar-header","aria-label":($=(J=d(c))==null?void 0:J.weekDay)==null?void 0:$.call(J,L)},[T.$slots["calendar-header"]?ue(T.$slots,"calendar-header",{key:0,day:s,index:L}):j("",!0),T.$slots["calendar-header"]?j("",!0):(P(),W(we,{key:1},[Dt(Ge(s),1)],64))],8,ms)}),128))]),K[2]||(K[2]=ye("div",{class:"dp__calendar_header_separator"},null,-1)),ot(ta,{name:U.value,css:!!T.transitions},{default:_e(()=>[I.value?(P(),W("div",{key:0,class:"dp__calendar",role:"rowgroup",onMouseleave:K[1]||(K[1]=s=>E.value=!1)},[(P(!0),W(we,null,Ye(B.value,(s,L)=>(P(),W("div",{key:L,class:"dp__calendar_row",role:"row"},[T.weekNumbers?(P(),W("div",ps,[ye("div",fs,Ge(u(s.days)),1)])):j("",!0),(P(!0),W(we,null,Ye(s.days,(J,$)=>{var ge,x,X;return P(),W("div",{id:d(Pr)(J.value),ref_for:!0,ref:de=>o(de,L,$),key:$+L,role:"gridcell",class:"dp__calendar_item","aria-pressed":(J.classData.dp__active_date||J.classData.dp__range_start||J.classData.dp__range_start)??void 0,"aria-disabled":J.classData.dp__cell_disabled||void 0,"aria-label":(x=(ge=d(c))==null?void 0:ge.day)==null?void 0:x.call(ge,J),tabindex:!J.current&&T.hideOffsetDates?void 0:0,"data-test":J.value,onClick:va(de=>le(de,J),["prevent"]),onTouchend:de=>le(de,J,!1),onKeydown:de=>d(et)(de,()=>T.$emit("select-date",J)),onMouseenter:de=>re(J,L,$),onMouseleave:de=>R(J),onMousedown:de=>Ve(J),onMouseup:K[0]||(K[0]=de=>E.value=!1)},[ye("div",{class:ke(["dp__cell_inner",J.classData])},[T.$slots.day&&D.value(J)?ue(T.$slots,"day",{key:0,day:+J.text,date:J.value}):j("",!0),T.$slots.day?j("",!0):(P(),W(we,{key:1},[Dt(Ge(J.text),1)],64)),J.marker&&D.value(J)?(P(),W(we,{key:2},[T.$slots.marker?ue(T.$slots,"marker",{key:0,marker:J.marker,day:+J.text,date:J.value}):(P(),W("div",{key:1,class:ke(ce.value(J.marker)),style:dt(J.marker.color?{backgroundColor:J.marker.color}:{})},null,6))],64)):j("",!0),pe.value(J.value)?(P(),W("div",{key:3,ref_for:!0,ref_key:"activeTooltip",ref:q,class:"dp__marker_tooltip",style:dt(Y.value)},[(X=J.marker)!=null&&X.tooltip?(P(),W("div",{key:0,class:"dp__tooltip_content",onClick:fe},[(P(!0),W(we,null,Ye(J.marker.tooltip,(de,be)=>(P(),W("div",{key:be,class:"dp__tooltip_text"},[T.$slots["marker-tooltip"]?ue(T.$slots,"marker-tooltip",{key:0,tooltip:de,day:J.value}):j("",!0),T.$slots["marker-tooltip"]?j("",!0):(P(),W(we,{key:1},[ye("div",{class:"dp__tooltip_mark",style:dt(de.color?{backgroundColor:de.color}:{})},null,4),ye("div",null,Ge(de.text),1)],64))]))),128)),ye("div",{class:"dp__arrow_bottom_tp",style:dt(ae.value)},null,4)])):j("",!0)],4)):j("",!0)],2)],40,hs)}),128))]))),128))],32)):j("",!0)]),_:3},8,["name","css"])],2)],2))}}),zn=e=>Array.isArray(e),gs=(e,t,n,a)=>{const r=Z([]),l=Z(new Date),i=Z(),p=()=>b(e.isTextInputDate),{modelValue:c,calendars:C,time:m,today:v}=ba(e,t,p),{defaultedMultiCalendars:h,defaultedStartTime:k,defaultedRange:Y,defaultedConfig:f,defaultedTz:S,propDates:I,defaultedMultiDates:U}=Se(e),{validateMonthYearInRange:A,isDisabled:q,isDateRangeAllowed:ae,checkMinMaxRange:E}=Et(e),{updateTimeValues:B,getSetDateTime:ne,setTime:F,assignStartTime:N,validateTime:ie,disabledTimesConfig:ce}=Rr(e,m,c,a),pe=G(()=>_=>C.value[_]?C.value[_].month:0),g=G(()=>_=>C.value[_]?C.value[_].year:0),D=_=>!f.value.keepViewOnOffsetClick||_?!0:!i.value,y=(_,te,O,ee=!1)=>{var se,Je;D(ee)&&(C.value[_]||(C.value[_]={month:0,year:0}),C.value[_].month=Hn(te)?(se=C.value[_])==null?void 0:se.month:te,C.value[_].year=Hn(O)?(Je=C.value[_])==null?void 0:Je.year:O)},H=()=>{e.autoApply&&t("select-date")};Ke(()=>{e.shadow||(c.value||(T(),k.value&&N(k.value)),b(!0),e.focusStartDate&&e.startDate&&T())});const re=G(()=>{var _;return(_=e.flow)!=null&&_.length&&!e.partialFlow?e.flowStep===e.flow.length:!0}),R=()=>{e.autoApply&&re.value&&t("auto-apply",e.partialFlow?e.flowStep!==e.flow.length:!1)},b=(_=!1)=>{if(c.value)return Array.isArray(c.value)?(r.value=c.value,u(_)):M(c.value,_);if(h.value.count&&_&&!e.startDate)return V(Q(),_)},oe=()=>Array.isArray(c.value)&&Y.value.enabled?xe(c.value[0])===xe(c.value[1]??c.value[0]):!1,V=(_=new Date,te=!1)=>{if((!h.value.count||!h.value.static||te)&&y(0,xe(_),he(_)),h.value.count&&(!h.value.solo||!c.value||oe()))for(let O=1;O{V(_),F("hours",Tt(_)),F("minutes",Rt(_)),F("seconds",jt(_)),h.value.count&&te&&Ve()},o=_=>{if(h.value.count){if(h.value.solo)return 0;const te=xe(_[0]),O=xe(_[1]);return Math.abs(O-te){_[1]&&Y.value.showLastInRange?V(_[o(_)],te):V(_[0],te);const O=(ee,se)=>[ee(_[0]),_[1]?ee(_[1]):m[se][1]];F("hours",O(Tt,"hours")),F("minutes",O(Rt,"minutes")),F("seconds",O(jt,"seconds"))},z=(_,te)=>{if((Y.value.enabled||e.weekPicker)&&!U.value.enabled)return w(_,te);if(U.value.enabled&&te){const O=_[_.length-1];return M(O,te)}},u=_=>{const te=c.value;z(te,_),h.value.count&&h.value.solo&&Ve()},le=(_,te)=>{const O=Ce(Q(),{month:pe.value(te),year:g.value(te)}),ee=_<0?ft(O,1):Jt(O,1);A(xe(ee),he(ee),_<0,e.preventMinMaxNavigation)&&(y(te,xe(ee),he(ee)),t("update-month-year",{instance:te,month:xe(ee),year:he(ee)}),h.value.count&&!h.value.solo&&fe(te),n())},fe=_=>{for(let te=_-1;te>=0;te--){const O=Jt(Ce(Q(),{month:pe.value(te+1),year:g.value(te+1)}),1);y(te,xe(O),he(O))}for(let te=_+1;te<=h.value.count-1;te++){const O=ft(Ce(Q(),{month:pe.value(te-1),year:g.value(te-1)}),1);y(te,xe(O),he(O))}},Ve=()=>{if(Array.isArray(c.value)&&c.value.length===2){const _=Q(Q(c.value[1]?c.value[1]:ft(c.value[0],1))),[te,O]=[xe(c.value[0]),he(c.value[0])],[ee,se]=[xe(c.value[1]),he(c.value[1])];(te!==ee||te===ee&&O!==se)&&h.value.solo&&y(1,xe(_),he(_))}else c.value&&!Array.isArray(c.value)&&(y(0,xe(c.value),he(c.value)),V(Q()))},T=()=>{e.startDate&&(y(0,xe(Q(e.startDate)),he(Q(e.startDate))),h.value.count&&fe(0))},K=(_,te)=>{if(e.monthChangeOnScroll){const O=new Date().getTime()-l.value.getTime(),ee=Math.abs(_.deltaY);let se=500;ee>1&&(se=100),ee>100&&(se=0),O>se&&(l.value=new Date,le(e.monthChangeOnScroll!=="inverse"?-_.deltaY:_.deltaY,te))}},s=(_,te,O=!1)=>{e.monthChangeOnArrows&&e.vertical===O&&L(_,te)},L=(_,te)=>{le(_==="right"?-1:1,te)},J=_=>{if(I.value.markers)return Aa(_.value,I.value.markers)},$=(_,te)=>{switch(e.sixWeeks===!0?"append":e.sixWeeks){case"prepend":return[!0,!1];case"center":return[_==0,!0];case"fair":return[_==0||te>_,!0];case"append":return[!1,!1];default:return[!1,!1]}},ge=(_,te,O,ee)=>{if(e.sixWeeks&&_.length<6){const se=6-_.length,Je=(te.getDay()+7-ee)%7,ut=6-(O.getDay()+7-ee)%7,[Bt,_a]=$(Je,ut);for(let la=1;la<=se;la++)if(_a?!!(la%2)==Bt:Bt){const At=_[0].days[0],qa=x(mt(At.value,-7),xe(te));_.unshift({days:qa})}else{const At=_[_.length-1],qa=At.days[At.days.length-1],Er=x(mt(qa.value,1),xe(te));_.push({days:Er})}}return _},x=(_,te)=>{const O=Q(_),ee=[];for(let se=0;se<7;se++){const Je=mt(O,se),ut=xe(Je)!==te;ee.push({text:e.hideOffsetDates&&ut?"":Je.getDate(),value:Je,current:!ut,classData:{}})}return ee},X=(_,te)=>{const O=[],ee=new Date(te,_),se=new Date(te,_+1,0),Je=e.weekStart,ut=ht(ee,{weekStartsOn:Je}),Bt=_a=>{const la=x(_a,_);if(O.push({days:la}),!O[O.length-1].days.some(At=>Me(tt(At.value),tt(se)))){const At=mt(_a,7);Bt(At)}};return Bt(ut),ge(O,ee,se,Je)},de=_=>{const te=St(Q(_.value),m.hours,m.minutes,rt());t("date-update",te),U.value.enabled?Dn(te,c,U.value.limit):c.value=te,a(),it().then(()=>{R()})},be=_=>Y.value.noDisabledRange?kr(r.value[0],_).some(te=>q(te)):!1,st=()=>{r.value=c.value?c.value.slice():[],r.value.length===2&&!(Y.value.fixedStart||Y.value.fixedEnd)&&(r.value=[])},me=(_,te)=>{const O=[Q(_.value),mt(Q(_.value),+Y.value.autoRange)];ae(O)?(te&&Pt(_.value),r.value=O):t("invalid-date",_.value)},Pt=_=>{const te=xe(Q(_)),O=he(Q(_));if(y(0,te,O),h.value.count>0)for(let ee=1;ee{if(be(_.value)||!E(_.value,c.value,Y.value.fixedStart?0:1))return t("invalid-date",_.value);r.value=$r(Q(_.value),c,t,Y)},na=(_,te)=>{if(st(),Y.value.autoRange)return me(_,te);if(Y.value.fixedStart||Y.value.fixedEnd)return gt(_);r.value[0]?E(Q(_.value),c.value)&&!be(_.value)?Ie(Q(_.value),Q(r.value[0]))?(r.value.unshift(Q(_.value)),t("range-end",r.value[0])):(r.value[1]=Q(_.value),t("range-end",r.value[1])):(e.autoApply&&t("auto-apply-invalid",_.value),t("invalid-date",_.value)):(r.value[0]=Q(_.value),t("range-start",r.value[0]))},rt=(_=!0)=>e.enableSeconds?Array.isArray(m.seconds)?_?m.seconds[0]:m.seconds[1]:m.seconds:0,ra=_=>{r.value[_]=St(r.value[_],m.hours[_],m.minutes[_],rt(_!==1))},Ea=()=>{var _,te;r.value[0]&&r.value[1]&&+((_=r.value)==null?void 0:_[0])>+((te=r.value)==null?void 0:te[1])&&(r.value.reverse(),t("range-start",r.value[0]),t("range-end",r.value[1]))},wa=()=>{r.value.length&&(r.value[0]&&!r.value[1]?ra(0):(ra(0),ra(1),a()),Ea(),c.value=r.value.slice(),Ra(r.value,t,e.autoApply,e.modelAuto))},Ba=(_,te=!1)=>{if(q(_.value)||!_.current&&e.hideOffsetDates)return t("invalid-date",_.value);if(i.value=JSON.parse(JSON.stringify(_)),!Y.value.enabled)return de(_);zn(m.hours)&&zn(m.minutes)&&!U.value.enabled&&(na(_,te),wa())},Na=(_,te)=>{var O;y(_,te.month,te.year,!0),h.value.count&&!h.value.solo&&fe(_),t("update-month-year",{instance:_,month:te.month,year:te.year}),n(h.value.solo?_:void 0);const ee=(O=e.flow)!=null&&O.length?e.flow[e.flowStep]:void 0;!te.fromNav&&(ee===Xe.month||ee===Xe.year)&&a()},La=(_,te)=>{Or({value:_,modelValue:c,range:Y.value.enabled,timezone:te?void 0:S.value.timezone}),H(),e.multiCalendars&&it().then(()=>b(!0))},Ha=()=>{const _=wn(Q(),S.value);Y.value.enabled?c.value&&Array.isArray(c.value)&&c.value[0]?c.value=Ie(_,c.value[0])?[_,c.value[0]]:[c.value[0],_]:c.value=[_]:c.value=_,H()},Va=()=>{if(Array.isArray(c.value))if(U.value.enabled){const _=Fa();c.value[c.value.length-1]=ne(_)}else c.value=c.value.map((_,te)=>_&&ne(_,te));else c.value=ne(c.value);t("time-update")},Fa=()=>Array.isArray(c.value)&&c.value.length?c.value[c.value.length-1]:null;return{calendars:C,modelValue:c,month:pe,year:g,time:m,disabledTimesConfig:ce,today:v,validateTime:ie,getCalendarDays:X,getMarker:J,handleScroll:K,handleSwipe:L,handleArrow:s,selectDate:Ba,updateMonthYear:Na,presetDate:La,selectCurrentDate:Ha,updateTime:(_,te=!0,O=!1)=>{B(_,te,O,Va)},assignMonthAndYear:V}},bs={key:0},ws=ze({__name:"DatePicker",props:{...yt},emits:["tooltip-open","tooltip-close","mount","update:internal-model-value","update-flow-step","reset-flow","auto-apply","focus-menu","select-date","range-start","range-end","invalid-fixed-range","time-update","am-pm-change","time-picker-open","time-picker-close","recalculate-position","update-month-year","auto-apply-invalid","date-update","invalid-date","overlay-toggle"],setup(e,{expose:t,emit:n}){const a=n,r=e,{calendars:l,month:i,year:p,modelValue:c,time:C,disabledTimesConfig:m,today:v,validateTime:h,getCalendarDays:k,getMarker:Y,handleArrow:f,handleScroll:S,handleSwipe:I,selectDate:U,updateMonthYear:A,presetDate:q,selectCurrentDate:ae,updateTime:E,assignMonthAndYear:B}=gs(r,a,oe,V),ne=qt(),{setHoverDate:F,getDayClassData:N,clearHoverDate:ie}=Is(c,r),{defaultedMultiCalendars:ce}=Se(r),pe=Z([]),g=Z([]),D=Z(null),y=lt(ne,"calendar"),H=lt(ne,"monthYear"),re=lt(ne,"timePicker"),R=K=>{r.shadow||a("mount",K)};ct(l,()=>{r.shadow||setTimeout(()=>{a("recalculate-position")},0)},{deep:!0}),ct(ce,(K,s)=>{K.count-s.count>0&&B()},{deep:!0});const b=G(()=>K=>k(i.value(K),p.value(K)).map(s=>({...s,days:s.days.map(L=>(L.marker=Y(L),L.classData=N(L),L))})));function oe(K){var s;K||K===0?(s=g.value[K])==null||s.triggerTransition(i.value(K),p.value(K)):g.value.forEach((L,J)=>L.triggerTransition(i.value(J),p.value(J)))}function V(){a("update-flow-step")}const M=(K,s=!1)=>{U(K,s),r.spaceConfirm&&a("select-date")},o=(K,s,L=0)=>{var J;(J=pe.value[L])==null||J.toggleMonthPicker(K,s)},w=(K,s,L=0)=>{var J;(J=pe.value[L])==null||J.toggleYearPicker(K,s)},z=(K,s,L)=>{var J;(J=D.value)==null||J.toggleTimePicker(K,s,L)},u=(K,s)=>{var L;if(!r.range){const J=c.value?c.value:v,$=s?new Date(s):J,ge=K?ht($,{weekStartsOn:1}):ar($,{weekStartsOn:1});U({value:ge,current:xe($)===i.value(0),text:"",classData:{}}),(L=document.getElementById(Pr(ge)))==null||L.focus()}},le=K=>{var s;(s=pe.value[0])==null||s.handleMonthYearChange(K,!0)},fe=K=>{A(0,{month:i.value(0),year:p.value(0)+(K?1:-1),fromNav:!0})},Ve=(K,s)=>{K===Xe.time&&a(`time-picker-${s?"open":"close"}`),a("overlay-toggle",{open:s,overlay:K})},T=K=>{a("overlay-toggle",{open:!1,overlay:K}),a("focus-menu")};return t({clearHoverDate:ie,presetDate:q,selectCurrentDate:ae,toggleMonthPicker:o,toggleYearPicker:w,toggleTimePicker:z,handleArrow:f,updateMonthYear:A,getSidebarProps:()=>({modelValue:c,month:i,year:p,time:C,updateTime:E,updateMonthYear:A,selectDate:U,presetDate:q}),changeMonth:le,changeYear:fe,selectWeekDate:u}),(K,s)=>(P(),W(we,null,[ot(Sa,{"multi-calendars":d(ce).count,collapse:K.collapse},{default:_e(({instance:L,index:J})=>[K.disableMonthYearSelect?j("",!0):(P(),De(ds,Qe({key:0,ref:$=>{$&&(pe.value[J]=$)},months:d(hr)(K.formatLocale,K.locale,K.monthNameFormat),years:d(_n)(K.yearRange,K.locale,K.reverseYears),month:d(i)(L),year:d(p)(L),instance:L},K.$props,{onMount:s[0]||(s[0]=$=>R(d(Vt).header)),onResetFlow:s[1]||(s[1]=$=>K.$emit("reset-flow")),onUpdateMonthYear:$=>d(A)(L,$),onOverlayClosed:T,onOverlayOpened:s[2]||(s[2]=$=>K.$emit("overlay-toggle",{open:!0,overlay:$}))}),je({_:2},[Ye(d(H),($,ge)=>({name:$,fn:_e(x=>[ue(K.$slots,$,We(at(x)))])}))]),1040,["months","years","month","year","instance","onUpdateMonthYear"])),ot(ys,Qe({ref:$=>{$&&(g.value[J]=$)},"mapped-dates":b.value(L),month:d(i)(L),year:d(p)(L),instance:L},K.$props,{onSelectDate:$=>d(U)($,L!==1),onHandleSpace:$=>M($,L!==1),onSetHoverDate:s[3]||(s[3]=$=>d(F)($)),onHandleScroll:$=>d(S)($,L),onHandleSwipe:$=>d(I)($,L),onMount:s[4]||(s[4]=$=>R(d(Vt).calendar)),onResetFlow:s[5]||(s[5]=$=>K.$emit("reset-flow")),onTooltipOpen:s[6]||(s[6]=$=>K.$emit("tooltip-open",$)),onTooltipClose:s[7]||(s[7]=$=>K.$emit("tooltip-close",$))}),je({_:2},[Ye(d(y),($,ge)=>({name:$,fn:_e(x=>[ue(K.$slots,$,We(at({...x})))])}))]),1040,["mapped-dates","month","year","instance","onSelectDate","onHandleSpace","onHandleScroll","onHandleSwipe"])]),_:3},8,["multi-calendars","collapse"]),K.enableTimePicker?(P(),W("div",bs,[K.$slots["time-picker"]?ue(K.$slots,"time-picker",We(Qe({key:0},{time:d(C),updateTime:d(E)}))):(P(),De(Sr,Qe({key:1,ref_key:"timePickerRef",ref:D},K.$props,{hours:d(C).hours,minutes:d(C).minutes,seconds:d(C).seconds,"internal-model-value":K.internalModelValue,"disabled-times-config":d(m),"validate-time":d(h),onMount:s[8]||(s[8]=L=>R(d(Vt).timePicker)),"onUpdate:hours":s[9]||(s[9]=L=>d(E)(L)),"onUpdate:minutes":s[10]||(s[10]=L=>d(E)(L,!1)),"onUpdate:seconds":s[11]||(s[11]=L=>d(E)(L,!1,!0)),onResetFlow:s[12]||(s[12]=L=>K.$emit("reset-flow")),onOverlayClosed:s[13]||(s[13]=L=>Ve(L,!1)),onOverlayOpened:s[14]||(s[14]=L=>Ve(L,!0)),onAmPmChange:s[15]||(s[15]=L=>K.$emit("am-pm-change",L))}),je({_:2},[Ye(d(re),(L,J)=>({name:L,fn:_e($=>[ue(K.$slots,L,We(at($)))])}))]),1040,["hours","minutes","seconds","internal-model-value","disabled-times-config","validate-time"]))])):j("",!0)],64))}}),_s=(e,t)=>{const n=Z(),{defaultedMultiCalendars:a,defaultedConfig:r,defaultedHighlight:l,defaultedRange:i,propDates:p,defaultedFilters:c,defaultedMultiDates:C}=Se(e),{modelValue:m,year:v,month:h,calendars:k}=ba(e,t),{isDisabled:Y}=Et(e),{selectYear:f,groupedYears:S,showYearPicker:I,isDisabled:U,toggleYearPicker:A,handleYearSelect:q,handleYear:ae}=Yr({modelValue:m,multiCalendars:a,range:i,highlight:l,calendars:k,propDates:p,month:h,year:v,filters:c,props:e,emit:t}),E=(D,y)=>[D,y].map(H=>kt(H,"MMMM",{locale:e.formatLocale})).join("-"),B=G(()=>D=>m.value?Array.isArray(m.value)?m.value.some(y=>Bn(D,y)):Bn(m.value,D):!1),ne=D=>{if(i.value.enabled){if(Array.isArray(m.value)){const y=Me(D,m.value[0])||Me(D,m.value[1]);return $a(m.value,n.value,D)&&!y}return!1}return!1},F=(D,y)=>D.quarter===$n(y)&&D.year===he(y),N=D=>typeof l.value=="function"?l.value({quarter:$n(D),year:he(D)}):!!l.value.quarters.find(y=>F(y,D)),ie=G(()=>D=>{const y=Ce(new Date,{year:v.value(D)});return el({start:ma(y),end:tr(y)}).map(H=>{const re=Ht(H),R=Yn(H),b=Y(H),oe=ne(re),V=N(re);return{text:E(re,R),value:re,active:B.value(re),highlighted:V,disabled:b,isBetween:oe}})}),ce=D=>{Dn(D,m,C.value.limit),t("auto-apply",!0)},pe=D=>{m.value=Tn(m,D,t),Ra(m.value,t,e.autoApply,e.modelAuto)},g=D=>{m.value=D,t("auto-apply")};return{defaultedConfig:r,defaultedMultiCalendars:a,groupedYears:S,year:v,isDisabled:U,quarters:ie,showYearPicker:I,modelValue:m,setHoverDate:D=>{n.value=D},selectYear:f,selectQuarter:(D,y,H)=>{if(!H)return k.value[y].month=xe(Yn(D)),C.value.enabled?ce(D):i.value.enabled?pe(D):g(D)},toggleYearPicker:A,handleYearSelect:q,handleYear:ae}},ks={class:"dp--quarter-items"},xs=["data-test","disabled","onClick","onMouseover"],Ms=ze({compatConfig:{MODE:3},__name:"QuarterPicker",props:{...yt},emits:["update:internal-model-value","reset-flow","overlay-closed","auto-apply","range-start","range-end","overlay-toggle","update-month-year"],setup(e,{expose:t,emit:n}){const a=n,r=e,l=qt(),i=lt(l,"yearMode"),{defaultedMultiCalendars:p,defaultedConfig:c,groupedYears:C,year:m,isDisabled:v,quarters:h,modelValue:k,showYearPicker:Y,setHoverDate:f,selectQuarter:S,toggleYearPicker:I,handleYearSelect:U,handleYear:A}=_s(r,a);return t({getSidebarProps:()=>({modelValue:k,year:m,selectQuarter:S,handleYearSelect:U,handleYear:A})}),(q,ae)=>(P(),De(Sa,{"multi-calendars":d(p).count,collapse:q.collapse,stretch:""},{default:_e(({instance:E})=>[ye("div",{class:"dp-quarter-picker-wrap",style:dt({minHeight:`${d(c).modeHeight}px`})},[q.$slots["top-extra"]?ue(q.$slots,"top-extra",{key:0,value:q.internalModelValue}):j("",!0),ye("div",null,[ot(Cr,Qe(q.$props,{items:d(C)(E),instance:E,"show-year-picker":d(Y)[E],year:d(m)(E),"is-disabled":B=>d(v)(E,B),onHandleYear:B=>d(A)(E,B),onYearSelect:B=>d(U)(B,E),onToggleYearPicker:B=>d(I)(E,B?.flow,B?.show)}),je({_:2},[Ye(d(i),(B,ne)=>({name:B,fn:_e(F=>[ue(q.$slots,B,We(at(F)))])}))]),1040,["items","instance","show-year-picker","year","is-disabled","onHandleYear","onYearSelect","onToggleYearPicker"])]),ye("div",ks,[(P(!0),W(we,null,Ye(d(h)(E),(B,ne)=>(P(),W("div",{key:ne},[ye("button",{type:"button",class:ke(["dp--qr-btn",{"dp--qr-btn-active":B.active,"dp--qr-btn-between":B.isBetween,"dp--qr-btn-disabled":B.disabled,"dp--highlighted":B.highlighted}]),"data-test":B.value,disabled:B.disabled,onClick:F=>d(S)(B.value,E,B.disabled),onMouseover:F=>d(f)(B.value)},[q.$slots.quarter?ue(q.$slots,"quarter",{key:0,value:B.value,text:B.text}):(P(),W(we,{key:1},[Dt(Ge(B.text),1)],64))],42,xs)]))),128))])],4)]),_:3},8,["multi-calendars","collapse"]))}}),Ds=["id","tabindex","role","aria-label"],Ts={key:0,class:"dp--menu-load-container"},Ps={key:1,class:"dp--menu-header"},As={key:0,class:"dp__sidebar_left"},Cs=["data-test","onClick","onKeydown"],Os={key:2,class:"dp__sidebar_right"},$s={key:3,class:"dp__action_extra"},Un=ze({compatConfig:{MODE:3},__name:"DatepickerMenu",props:{...Ya,shadow:{type:Boolean,default:!1},openOnTop:{type:Boolean,default:!1},internalModelValue:{type:[Date,Array],default:null},noOverlayFocus:{type:Boolean,default:!1},collapse:{type:Boolean,default:!1},getInputRect:{type:Function,default:()=>({})},isTextInputDate:{type:Boolean,default:!1}},emits:["close-picker","select-date","auto-apply","time-update","flow-step","update-month-year","invalid-select","update:internal-model-value","recalculate-position","invalid-fixed-range","tooltip-open","tooltip-close","time-picker-open","time-picker-close","am-pm-change","range-start","range-end","auto-apply-invalid","date-update","invalid-date","overlay-toggle"],setup(e,{expose:t,emit:n}){const a=n,r=e,l=Z(null),i=G(()=>{const{openOnTop:x,...X}=r;return{...X,flowStep:F.value,collapse:r.collapse,noOverlayFocus:r.noOverlayFocus,menuWrapRef:l.value}}),{setMenuFocused:p,setShiftKey:c,control:C}=Ar(),m=qt(),{defaultedTextInput:v,defaultedInline:h,defaultedConfig:k,defaultedUI:Y}=Se(r),f=Z(null),S=Z(0),I=Z(null),U=Z(!1),A=Z(null);Ke(()=>{if(!r.shadow){U.value=!0,q(),window.addEventListener("resize",q);const x=Fe(l);if(x&&!v.value.enabled&&!h.value.enabled&&(p(!0),y()),x){const X=de=>{k.value.allowPreventDefault&&de.preventDefault(),Yt(de,k.value,!0)};x.addEventListener("pointerdown",X),x.addEventListener("mousedown",X)}}}),Ca(()=>{window.removeEventListener("resize",q)});const q=()=>{const x=Fe(I);x&&(S.value=x.getBoundingClientRect().width)},{arrowRight:ae,arrowLeft:E,arrowDown:B,arrowUp:ne}=It(),{flowStep:F,updateFlowStep:N,childMount:ie,resetFlow:ce,handleFlow:pe}=Es(r,a,A),g=G(()=>r.monthPicker?qi:r.yearPicker?Qi:r.timePicker?rs:r.quarterPicker?Ms:ws),D=G(()=>{var x;if(k.value.arrowLeft)return k.value.arrowLeft;const X=(x=l.value)==null?void 0:x.getBoundingClientRect(),de=r.getInputRect();return de?.width=(X?.right??0)&&de?.width{const x=Fe(l);x&&x.focus({preventScroll:!0})},H=G(()=>{var x;return((x=A.value)==null?void 0:x.getSidebarProps())||{}}),re=()=>{r.openOnTop&&a("recalculate-position")},R=lt(m,"action"),b=G(()=>r.monthPicker||r.yearPicker?lt(m,"monthYear"):r.timePicker?lt(m,"timePicker"):lt(m,"shared")),oe=G(()=>r.openOnTop?"dp__arrow_bottom":"dp__arrow_top"),V=G(()=>({dp__menu_disabled:r.disabled,dp__menu_readonly:r.readonly,"dp-menu-loading":r.loading})),M=G(()=>({dp__menu:!0,dp__menu_index:!h.value.enabled,dp__relative:h.value.enabled,...Y.value.menu??{}})),o=x=>{Yt(x,k.value,!0)},w=()=>{r.escClose&&a("close-picker")},z=x=>{if(r.arrowNavigation){if(x===Ze.up)return ne();if(x===Ze.down)return B();if(x===Ze.left)return E();if(x===Ze.right)return ae()}else x===Ze.left||x===Ze.up?T("handleArrow",Ze.left,0,x===Ze.up):T("handleArrow",Ze.right,0,x===Ze.down)},u=x=>{c(x.shiftKey),!r.disableMonthYearSelect&&x.code===$e.tab&&x.target.classList.contains("dp__menu")&&C.value.shiftKeyInMenu&&(x.preventDefault(),Yt(x,k.value,!0),a("close-picker"))},le=()=>{y(),a("time-picker-close")},fe=x=>{var X,de,be;(X=A.value)==null||X.toggleTimePicker(!1,!1),(de=A.value)==null||de.toggleMonthPicker(!1,!1,x),(be=A.value)==null||be.toggleYearPicker(!1,!1,x)},Ve=(x,X=0)=>{var de,be,st;return x==="month"?(de=A.value)==null?void 0:de.toggleMonthPicker(!1,!0,X):x==="year"?(be=A.value)==null?void 0:be.toggleYearPicker(!1,!0,X):x==="time"?(st=A.value)==null?void 0:st.toggleTimePicker(!0,!1):fe(X)},T=(x,...X)=>{var de,be;(de=A.value)!=null&&de[x]&&((be=A.value)==null||be[x](...X))},K=()=>{T("selectCurrentDate")},s=(x,X)=>{T("presetDate",x,X)},L=()=>{T("clearHoverDate")},J=(x,X)=>{T("updateMonthYear",x,X)},$=(x,X)=>{x.preventDefault(),z(X)},ge=x=>{var X,de,be;if(u(x),x.key===$e.home||x.key===$e.end)return T("selectWeekDate",x.key===$e.home,x.target.getAttribute("id"));switch((x.key===$e.pageUp||x.key===$e.pageDown)&&(x.shiftKey?(T("changeYear",x.key===$e.pageUp),(X=on(l.value,"overlay-year"))==null||X.focus()):(T("changeMonth",x.key===$e.pageUp),(de=on(l.value,x.key===$e.pageUp?"action-prev":"action-next"))==null||de.focus()),x.target.getAttribute("id")&&((be=l.value)==null||be.focus({preventScroll:!0}))),x.key){case $e.esc:return w();case $e.arrowLeft:return $(x,Ze.left);case $e.arrowRight:return $(x,Ze.right);case $e.arrowUp:return $(x,Ze.up);case $e.arrowDown:return $(x,Ze.down);default:return}};return t({updateMonthYear:J,switchView:Ve,handleFlow:pe}),(x,X)=>{var de,be,st;return P(),W("div",{id:x.uid?`dp-menu-${x.uid}`:void 0,ref_key:"dpMenuRef",ref:l,tabindex:d(h).enabled?void 0:"0",role:d(h).enabled?void 0:"dialog","aria-label":(de=x.ariaLabels)==null?void 0:de.menu,class:ke(M.value),style:dt({"--dp-arrow-left":D.value}),onMouseleave:L,onClick:o,onKeydown:ge},[(x.disabled||x.readonly)&&d(h).enabled||x.loading?(P(),W("div",{key:0,class:ke(V.value)},[x.loading?(P(),W("div",Ts,X[19]||(X[19]=[ye("span",{class:"dp--menu-loader"},null,-1)]))):j("",!0)],2)):j("",!0),x.$slots["menu-header"]?(P(),W("div",Ps,[ue(x.$slots,"menu-header")])):j("",!0),!d(h).enabled&&!x.teleportCenter?(P(),W("div",{key:2,class:ke(oe.value)},null,2)):j("",!0),ye("div",{ref_key:"innerMenuRef",ref:I,class:ke({dp__menu_content_wrapper:((be=x.presetDates)==null?void 0:be.length)||!!x.$slots["left-sidebar"]||!!x.$slots["right-sidebar"],"dp--menu-content-wrapper-collapsed":e.collapse&&(((st=x.presetDates)==null?void 0:st.length)||!!x.$slots["left-sidebar"]||!!x.$slots["right-sidebar"])}),style:dt({"--dp-menu-width":`${S.value}px`})},[x.$slots["left-sidebar"]?(P(),W("div",As,[ue(x.$slots,"left-sidebar",We(at(H.value)))])):j("",!0),x.presetDates.length?(P(),W("div",{key:1,class:ke({"dp--preset-dates-collapsed":e.collapse,"dp--preset-dates":!0})},[(P(!0),W(we,null,Ye(x.presetDates,(me,Pt)=>(P(),W(we,{key:Pt},[me.slot?ue(x.$slots,me.slot,{key:0,presetDate:s,label:me.label,value:me.value}):(P(),W("button",{key:1,type:"button",style:dt(me.style||{}),class:ke(["dp__btn dp--preset-range",{"dp--preset-range-collapsed":e.collapse}]),"data-test":me.testId??void 0,onClick:va(gt=>s(me.value,me.noTz),["prevent"]),onKeydown:gt=>d(et)(gt,()=>s(me.value,me.noTz),!0)},Ge(me.label),47,Cs))],64))),128))],2)):j("",!0),ye("div",{ref_key:"calendarWrapperRef",ref:f,class:"dp__instance_calendar",role:"document"},[(P(),De(Oa(g.value),Qe({ref_key:"dynCmpRef",ref:A},i.value,{"flow-step":d(F),onMount:d(ie),onUpdateFlowStep:d(N),onResetFlow:d(ce),onFocusMenu:y,onSelectDate:X[0]||(X[0]=me=>x.$emit("select-date")),onDateUpdate:X[1]||(X[1]=me=>x.$emit("date-update",me)),onTooltipOpen:X[2]||(X[2]=me=>x.$emit("tooltip-open",me)),onTooltipClose:X[3]||(X[3]=me=>x.$emit("tooltip-close",me)),onAutoApply:X[4]||(X[4]=me=>x.$emit("auto-apply",me)),onRangeStart:X[5]||(X[5]=me=>x.$emit("range-start",me)),onRangeEnd:X[6]||(X[6]=me=>x.$emit("range-end",me)),onInvalidFixedRange:X[7]||(X[7]=me=>x.$emit("invalid-fixed-range",me)),onTimeUpdate:X[8]||(X[8]=me=>x.$emit("time-update")),onAmPmChange:X[9]||(X[9]=me=>x.$emit("am-pm-change",me)),onTimePickerOpen:X[10]||(X[10]=me=>x.$emit("time-picker-open",me)),onTimePickerClose:le,onRecalculatePosition:re,onUpdateMonthYear:X[11]||(X[11]=me=>x.$emit("update-month-year",me)),onAutoApplyInvalid:X[12]||(X[12]=me=>x.$emit("auto-apply-invalid",me)),onInvalidDate:X[13]||(X[13]=me=>x.$emit("invalid-date",me)),onOverlayToggle:X[14]||(X[14]=me=>x.$emit("overlay-toggle",me)),"onUpdate:internalModelValue":X[15]||(X[15]=me=>x.$emit("update:internal-model-value",me))}),je({_:2},[Ye(b.value,(me,Pt)=>({name:me,fn:_e(gt=>[ue(x.$slots,me,We(at({...gt})))])}))]),1040,["flow-step","onMount","onUpdateFlowStep","onResetFlow"]))],512),x.$slots["right-sidebar"]?(P(),W("div",Os,[ue(x.$slots,"right-sidebar",We(at(H.value)))])):j("",!0),x.$slots["action-extra"]?(P(),W("div",$s,[x.$slots["action-extra"]?ue(x.$slots,"action-extra",{key:0,selectCurrentDate:K}):j("",!0)])):j("",!0)],6),!x.autoApply||d(k).keepActionRow?(P(),De(Ii,Qe({key:3,"menu-mount":U.value},i.value,{"calendar-width":S.value,onClosePicker:X[16]||(X[16]=me=>x.$emit("close-picker")),onSelectDate:X[17]||(X[17]=me=>x.$emit("select-date")),onInvalidSelect:X[18]||(X[18]=me=>x.$emit("invalid-select")),onSelectNow:K}),je({_:2},[Ye(d(R),(me,Pt)=>({name:me,fn:_e(gt=>[ue(x.$slots,me,We(at({...gt})))])}))]),1040,["menu-mount","calendar-width"])):j("",!0)],46,Ds)}}});var Ut=(e=>(e.center="center",e.left="left",e.right="right",e))(Ut||{});const Ys=({menuRef:e,menuRefInner:t,inputRef:n,pickerWrapperRef:a,inline:r,emit:l,props:i,slots:p})=>{const{defaultedConfig:c}=Se(i),C=Z({}),m=Z(!1),v=Z({top:"0",left:"0"}),h=Z(!1),k=ca(i,"teleportCenter");ct(k,()=>{v.value=JSON.parse(JSON.stringify({})),ae()});const Y=y=>{if(i.teleport){const H=y.getBoundingClientRect();return{left:H.left+window.scrollX,top:H.top+window.scrollY}}return{top:0,left:0}},f=(y,H)=>{v.value.left=`${y+H-C.value.width}px`},S=y=>{v.value.left=`${y}px`},I=(y,H)=>{i.position===Ut.left&&S(y),i.position===Ut.right&&f(y,H),i.position===Ut.center&&(v.value.left=`${y+H/2-C.value.width/2}px`)},U=y=>{const{width:H,height:re}=y.getBoundingClientRect(),{top:R,left:b}=i.altPosition?i.altPosition(y):Y(y);return{top:+R,left:+b,width:H,height:re}},A=()=>{v.value.left="50%",v.value.top="50%",v.value.transform="translate(-50%, -50%)",v.value.position="fixed",delete v.value.opacity},q=()=>{const y=Fe(n),{top:H,left:re,transform:R}=i.altPosition(y);v.value={top:`${H}px`,left:`${re}px`,transform:R??""}},ae=(y=!0)=>{var H;if(!r.value.enabled){if(k.value)return A();if(i.altPosition!==null)return q();if(y){const re=i.teleport?(H=t.value)==null?void 0:H.$el:e.value;re&&(C.value=re.getBoundingClientRect()),l("recalculate-position")}return ce()}},E=({inputEl:y,left:H,width:re})=>{window.screen.width>768&&!m.value&&I(H,re),F(y)},B=y=>{const{top:H,left:re,height:R,width:b}=U(y);v.value.top=`${R+H+ +i.offset}px`,h.value=!1,m.value||(v.value.left=`${re+b/2-C.value.width/2}px`),E({inputEl:y,left:re,width:b})},ne=y=>{const{top:H,left:re,width:R}=U(y);v.value.top=`${H-+i.offset-C.value.height}px`,h.value=!0,E({inputEl:y,left:re,width:R})},F=y=>{if(i.autoPosition){const{left:H,width:re}=U(y),{left:R,right:b}=C.value;if(!m.value){if(Math.abs(R)!==Math.abs(b)){if(R<=0)return m.value=!0,S(H);if(b>=document.documentElement.clientWidth)return m.value=!0,f(H,re)}return I(H,re)}}},N=()=>{const y=Fe(n);if(y){const{height:H}=C.value,{top:re,height:R}=y.getBoundingClientRect(),b=window.innerHeight-re-R,oe=re;return H<=b?Lt.bottom:H>b&&H<=oe?Lt.top:b>=oe?Lt.bottom:Lt.top}return Lt.bottom},ie=y=>N()===Lt.bottom?B(y):ne(y),ce=()=>{const y=Fe(n);if(y)return i.autoPosition?ie(y):B(y)},pe=function(y){if(y){const H=y.scrollHeight>y.clientHeight,re=window.getComputedStyle(y).overflowY.indexOf("hidden")!==-1;return H&&!re}return!0},g=function(y){return!y||y===document.body||y.nodeType===Node.DOCUMENT_FRAGMENT_NODE?window:pe(y)?y:g(y.assignedSlot&&c.value.shadowDom?y.assignedSlot.parentNode:y.parentNode)},D=y=>{if(y)switch(i.position){case Ut.left:return{left:0,transform:"translateX(0)"};case Ut.right:return{left:`${y.width}px`,transform:"translateX(-100%)"};default:return{left:`${y.width/2}px`,transform:"translateX(-50%)"}}return{}};return{openOnTop:h,menuStyle:v,xCorrect:m,setMenuPosition:ae,getScrollableParent:g,shadowRender:(y,H)=>{var re,R,b;const oe=document.createElement("div"),V=(re=Fe(n))==null?void 0:re.getBoundingClientRect();oe.setAttribute("id","dp--temp-container");const M=(R=a.value)!=null&&R.clientWidth?a.value:document.body;M.append(oe);const o=D(V),w=c.value.shadowDom?Object.keys(p).filter(u=>["right-sidebar","left-sidebar","top-extra","action-extra"].includes(u)):Object.keys(p),z=Nr(y,{...H,shadow:!0,style:{opacity:0,position:"absolute",...o}},Object.fromEntries(w.map(u=>[u,p[u]])));An(z,oe),C.value=(b=z.el)==null?void 0:b.getBoundingClientRect(),An(null,oe),M.removeChild(oe)}}},Ot=[{name:"clock-icon",use:["time","calendar","shared"]},{name:"arrow-left",use:["month-year","calendar","shared","year-mode"]},{name:"arrow-right",use:["month-year","calendar","shared","year-mode"]},{name:"arrow-up",use:["time","calendar","month-year","shared"]},{name:"arrow-down",use:["time","calendar","month-year","shared"]},{name:"calendar-icon",use:["month-year","time","calendar","shared","year-mode"]},{name:"day",use:["calendar","shared"]},{name:"month-overlay-value",use:["calendar","month-year","shared"]},{name:"year-overlay-value",use:["calendar","month-year","shared","year-mode"]},{name:"year-overlay",use:["month-year","shared"]},{name:"month-overlay",use:["month-year","shared"]},{name:"month-overlay-header",use:["month-year","shared"]},{name:"year-overlay-header",use:["month-year","shared"]},{name:"hours-overlay-value",use:["calendar","time","shared"]},{name:"hours-overlay-header",use:["calendar","time","shared"]},{name:"minutes-overlay-value",use:["calendar","time","shared"]},{name:"minutes-overlay-header",use:["calendar","time","shared"]},{name:"seconds-overlay-value",use:["calendar","time","shared"]},{name:"seconds-overlay-header",use:["calendar","time","shared"]},{name:"hours",use:["calendar","time","shared"]},{name:"minutes",use:["calendar","time","shared"]},{name:"month",use:["calendar","month-year","shared"]},{name:"year",use:["calendar","month-year","shared","year-mode"]},{name:"action-buttons",use:["action"]},{name:"action-preview",use:["action"]},{name:"calendar-header",use:["calendar","shared"]},{name:"marker-tooltip",use:["calendar","shared"]},{name:"action-extra",use:["menu"]},{name:"time-picker-overlay",use:["calendar","time","shared"]},{name:"am-pm-button",use:["calendar","time","shared"]},{name:"left-sidebar",use:["menu"]},{name:"right-sidebar",use:["menu"]},{name:"month-year",use:["month-year","shared"]},{name:"time-picker",use:["menu","shared"]},{name:"action-row",use:["action"]},{name:"marker",use:["calendar","shared"]},{name:"quarter",use:["shared"]},{name:"top-extra",use:["shared","month-year"]},{name:"tp-inline-arrow-up",use:["shared","time"]},{name:"tp-inline-arrow-down",use:["shared","time"]},{name:"menu-header",use:["menu"]}],Ss=[{name:"trigger"},{name:"input-icon"},{name:"clear-icon"},{name:"dp-input"}],Rs={all:()=>Ot,monthYear:()=>Ot.filter(e=>e.use.includes("month-year")),input:()=>Ss,timePicker:()=>Ot.filter(e=>e.use.includes("time")),action:()=>Ot.filter(e=>e.use.includes("action")),calendar:()=>Ot.filter(e=>e.use.includes("calendar")),menu:()=>Ot.filter(e=>e.use.includes("menu")),shared:()=>Ot.filter(e=>e.use.includes("shared")),yearMode:()=>Ot.filter(e=>e.use.includes("year-mode"))},lt=(e,t,n)=>{const a=[];return Rs[t]().forEach(r=>{e[r.name]&&a.push(r.name)}),n!=null&&n.length&&n.forEach(r=>{r.slot&&a.push(r.slot)}),a},ga=e=>{const t=G(()=>a=>e.value?a?e.value.open:e.value.close:""),n=G(()=>a=>e.value?a?e.value.menuAppearTop:e.value.menuAppearBottom:"");return{transitionName:t,showTransition:!!e.value,menuTransition:n}},ba=(e,t,n)=>{const{defaultedRange:a,defaultedTz:r}=Se(e),l=Q(nt(Q(),r.value.timezone)),i=Z([{month:xe(l),year:he(l)}]),p=h=>{const k={hours:Tt(l),minutes:Rt(l),seconds:0};return a.value.enabled?[k[h],k[h]]:k[h]},c=ha({hours:p("hours"),minutes:p("minutes"),seconds:p("seconds")});ct(a,(h,k)=>{h.enabled!==k.enabled&&(c.hours=p("hours"),c.minutes=p("minutes"),c.seconds=p("seconds"))},{deep:!0});const C=G({get:()=>e.internalModelValue,set:h=>{!e.readonly&&!e.disabled&&t("update:internal-model-value",h)}}),m=G(()=>h=>i.value[h]?i.value[h].month:0),v=G(()=>h=>i.value[h]?i.value[h].year:0);return ct(C,(h,k)=>{n&&JSON.stringify(h??{})!==JSON.stringify(k??{})&&n()},{deep:!0}),{calendars:i,time:c,modelValue:C,month:m,year:v,today:l}},Is=(e,t)=>{const{defaultedMultiCalendars:n,defaultedMultiDates:a,defaultedUI:r,defaultedHighlight:l,defaultedTz:i,propDates:p,defaultedRange:c}=Se(t),{isDisabled:C}=Et(t),m=Z(null),v=Z(nt(new Date,i.value.timezone)),h=o=>{!o.current&&t.hideOffsetDates||(m.value=o.value)},k=()=>{m.value=null},Y=o=>Array.isArray(e.value)&&c.value.enabled&&e.value[0]&&m.value?o?Ne(m.value,e.value[0]):Ie(m.value,e.value[0]):!0,f=(o,w)=>{const z=()=>e.value?w?e.value[0]||null:e.value[1]:null,u=e.value&&Array.isArray(e.value)?z():null;return Me(Q(o.value),u)},S=o=>{const w=Array.isArray(e.value)?e.value[0]:null;return o?!Ie(m.value??null,w):!0},I=(o,w=!0)=>(c.value.enabled||t.weekPicker)&&Array.isArray(e.value)&&e.value.length===2?t.hideOffsetDates&&!o.current?!1:Me(Q(o.value),e.value[w?0:1]):c.value.enabled?f(o,w)&&S(w)||Me(o.value,Array.isArray(e.value)?e.value[0]:null)&&Y(w):!1,U=(o,w)=>{if(Array.isArray(e.value)&&e.value[0]&&e.value.length===1){const z=Me(o.value,m.value);return w?Ne(e.value[0],o.value)&&z:Ie(e.value[0],o.value)&&z}return!1},A=o=>!e.value||t.hideOffsetDates&&!o.current?!1:c.value.enabled?t.modelAuto&&Array.isArray(e.value)?Me(o.value,e.value[0]?e.value[0]:v.value):!1:a.value.enabled&&Array.isArray(e.value)?e.value.some(w=>Me(w,o.value)):Me(o.value,e.value?e.value:v.value),q=o=>{if(c.value.autoRange||t.weekPicker){if(m.value){if(t.hideOffsetDates&&!o.current)return!1;const w=mt(m.value,+c.value.autoRange),z=xt(Q(m.value),t.weekStart);return t.weekPicker?Me(z[1],Q(o.value)):Me(w,Q(o.value))}return!1}return!1},ae=o=>{if(c.value.autoRange||t.weekPicker){if(m.value){const w=mt(m.value,+c.value.autoRange);if(t.hideOffsetDates&&!o.current)return!1;const z=xt(Q(m.value),t.weekStart);return t.weekPicker?Ne(o.value,z[0])&&Ie(o.value,z[1]):Ne(o.value,m.value)&&Ie(o.value,w)}return!1}return!1},E=o=>{if(c.value.autoRange||t.weekPicker){if(m.value){if(t.hideOffsetDates&&!o.current)return!1;const w=xt(Q(m.value),t.weekStart);return t.weekPicker?Me(w[0],o.value):Me(m.value,o.value)}return!1}return!1},B=o=>$a(e.value,m.value,o.value),ne=()=>t.modelAuto&&Array.isArray(t.internalModelValue)?!!t.internalModelValue[0]:!1,F=()=>t.modelAuto?yr(t.internalModelValue):!0,N=o=>{if(t.weekPicker)return!1;const w=c.value.enabled?!I(o)&&!I(o,!1):!0;return!C(o.value)&&!A(o)&&!(!o.current&&t.hideOffsetDates)&&w},ie=o=>c.value.enabled?t.modelAuto?ne()&&A(o):!1:A(o),ce=o=>l.value?oi(o.value,p.value.highlight):!1,pe=o=>{const w=C(o.value);return w&&(typeof l.value=="function"?!l.value(o.value,w):!l.value.options.highlightDisabled)},g=o=>{var w;return typeof l.value=="function"?l.value(o.value):(w=l.value.weekdays)==null?void 0:w.includes(o.value.getDay())},D=o=>(c.value.enabled||t.weekPicker)&&(!(n.value.count>0)||o.current)&&F()&&!(!o.current&&t.hideOffsetDates)&&!A(o)?B(o):!1,y=o=>{const{isRangeStart:w,isRangeEnd:z}=b(o),u=c.value.enabled?w||z:!1;return{dp__cell_offset:!o.current,dp__pointer:!t.disabled&&!(!o.current&&t.hideOffsetDates)&&!C(o.value),dp__cell_disabled:C(o.value),dp__cell_highlight:!pe(o)&&(ce(o)||g(o))&&!ie(o)&&!u&&!E(o)&&!(D(o)&&t.weekPicker)&&!z,dp__cell_highlight_active:!pe(o)&&(ce(o)||g(o))&&ie(o),dp__today:!t.noToday&&Me(o.value,v.value)&&o.current,"dp--past":Ie(o.value,v.value),"dp--future":Ne(o.value,v.value)}},H=o=>({dp__active_date:ie(o),dp__date_hover:N(o)}),re=o=>{if(e.value&&!Array.isArray(e.value)){const w=xt(e.value,t.weekStart);return{...V(o),dp__range_start:Me(w[0],o.value),dp__range_end:Me(w[1],o.value),dp__range_between_week:Ne(o.value,w[0])&&Ie(o.value,w[1])}}return{...V(o)}},R=o=>{if(e.value&&Array.isArray(e.value)){const w=xt(e.value[0],t.weekStart),z=e.value[1]?xt(e.value[1],t.weekStart):[];return{...V(o),dp__range_start:Me(w[0],o.value)||Me(z[0],o.value),dp__range_end:Me(w[1],o.value)||Me(z[1],o.value),dp__range_between_week:Ne(o.value,w[0])&&Ie(o.value,w[1])||Ne(o.value,z[0])&&Ie(o.value,z[1]),dp__range_between:Ne(o.value,w[1])&&Ie(o.value,z[0])}}return{...V(o)}},b=o=>{const w=n.value.count>0?o.current&&I(o)&&F():I(o)&&F(),z=n.value.count>0?o.current&&I(o,!1)&&F():I(o,!1)&&F();return{isRangeStart:w,isRangeEnd:z}},oe=o=>{const{isRangeStart:w,isRangeEnd:z}=b(o);return{dp__range_start:w,dp__range_end:z,dp__range_between:D(o),dp__date_hover:Me(o.value,m.value)&&!w&&!z&&!t.weekPicker,dp__date_hover_start:U(o,!0),dp__date_hover_end:U(o,!1)}},V=o=>({...oe(o),dp__cell_auto_range:ae(o),dp__cell_auto_range_start:E(o),dp__cell_auto_range_end:q(o)}),M=o=>c.value.enabled?c.value.autoRange?V(o):t.modelAuto?{...H(o),...oe(o)}:t.weekPicker?R(o):oe(o):t.weekPicker?re(o):H(o);return{setHoverDate:h,clearHoverDate:k,getDayClassData:o=>t.hideOffsetDates&&!o.current?{}:{...y(o),...M(o),[t.dayClass?t.dayClass(o.value,t.internalModelValue):""]:!0,...r.value.calendarCell??{}}}},Et=e=>{const{defaultedFilters:t,defaultedRange:n,propDates:a,defaultedMultiDates:r}=Se(e),l=g=>a.value.disabledDates?typeof a.value.disabledDates=="function"?a.value.disabledDates(Q(g)):!!Aa(g,a.value.disabledDates):!1,i=g=>a.value.maxDate?e.yearPicker?he(g)>he(a.value.maxDate):Ne(g,a.value.maxDate):!1,p=g=>a.value.minDate?e.yearPicker?he(g){const D=i(g),y=p(g),H=l(g),re=t.value.months.map(M=>+M).includes(xe(g)),R=e.disabledWeekDays.length?e.disabledWeekDays.some(M=>+M===Ul(g)):!1,b=k(g),oe=he(g),V=oe<+e.yearRange[0]||oe>+e.yearRange[1];return!(D||y||H||re||V||R||b)},C=(g,D)=>Ie(...$t(a.value.minDate,g,D))||Me(...$t(a.value.minDate,g,D)),m=(g,D)=>Ne(...$t(a.value.maxDate,g,D))||Me(...$t(a.value.maxDate,g,D)),v=(g,D,y)=>{let H=!1;return a.value.maxDate&&y&&m(g,D)&&(H=!0),a.value.minDate&&!y&&C(g,D)&&(H=!0),H},h=(g,D,y,H)=>{let re=!1;return H&&(a.value.minDate||a.value.maxDate)?a.value.minDate&&a.value.maxDate?re=v(g,D,y):(a.value.minDate&&C(g,D)||a.value.maxDate&&m(g,D))&&(re=!0):re=!0,re},k=g=>Array.isArray(a.value.allowedDates)&&!a.value.allowedDates.length?!0:a.value.allowedDates?!Aa(g,a.value.allowedDates):!1,Y=g=>!c(g),f=g=>n.value.noDisabledRange?!er({start:g[0],end:g[1]}).some(D=>Y(D)):!0,S=g=>{if(g){const D=he(g);return D>=+e.yearRange[0]&&D<=e.yearRange[1]}return!0},I=(g,D)=>!!(Array.isArray(g)&&g[D]&&(n.value.maxRange||n.value.minRange)&&S(g[D])),U=(g,D,y=0)=>{if(I(D,y)&&S(g)){const H=Jn(g,D[y]),re=kr(D[y],g),R=re.length===1?0:re.filter(oe=>Y(oe)).length,b=Math.abs(H)-(n.value.minMaxRawRange?0:R);if(n.value.minRange&&n.value.maxRange)return b>=+n.value.minRange&&b<=+n.value.maxRange;if(n.value.minRange)return b>=+n.value.minRange;if(n.value.maxRange)return b<=+n.value.maxRange}return!0},A=()=>!e.enableTimePicker||e.monthPicker||e.yearPicker||e.ignoreTimeValidation,q=g=>Array.isArray(g)?[g[0]?Ga(g[0]):null,g[1]?Ga(g[1]):null]:Ga(g),ae=(g,D,y)=>g.find(H=>+H.hours===Tt(D)&&H.minutes==="*"?!0:+H.minutes===Rt(D)&&+H.hours===Tt(D))&&y,E=(g,D,y)=>{const[H,re]=g,[R,b]=D;return!ae(H,R,y)&&!ae(re,b,y)&&y},B=(g,D)=>{const y=Array.isArray(D)?D:[D];return Array.isArray(e.disabledTimes)?Array.isArray(e.disabledTimes[0])?E(e.disabledTimes,y,g):!y.some(H=>ae(e.disabledTimes,H,g)):g},ne=(g,D)=>{const y=Array.isArray(D)?[Ft(D[0]),D[1]?Ft(D[1]):void 0]:Ft(D),H=!e.disabledTimes(y);return g&&H},F=(g,D)=>e.disabledTimes?Array.isArray(e.disabledTimes)?B(D,g):ne(D,g):D,N=g=>{let D=!0;if(!g||A())return!0;const y=!a.value.minDate&&!a.value.maxDate?q(g):g;return(e.maxTime||a.value.maxDate)&&(D=qn(e.maxTime,a.value.maxDate,"max",qe(y),D)),(e.minTime||a.value.minDate)&&(D=qn(e.minTime,a.value.minDate,"min",qe(y),D)),F(g,D)},ie=g=>{if(!e.monthPicker)return!0;let D=!0;const y=Q(pt(g));if(a.value.minDate&&a.value.maxDate){const H=Q(pt(a.value.minDate)),re=Q(pt(a.value.maxDate));return Ne(y,H)&&Ie(y,re)||Me(y,H)||Me(y,re)}if(a.value.minDate){const H=Q(pt(a.value.minDate));D=Ne(y,H)||Me(y,H)}if(a.value.maxDate){const H=Q(pt(a.value.maxDate));D=Ie(y,H)||Me(y,H)}return D},ce=G(()=>g=>!e.enableTimePicker||e.ignoreTimeValidation?!0:N(g)),pe=G(()=>g=>e.monthPicker?Array.isArray(g)&&(n.value.enabled||r.value.enabled)?!g.filter(D=>!ie(D)).length:ie(g):!0);return{isDisabled:Y,validateDate:c,validateMonthYearInRange:h,isDateRangeAllowed:f,checkMinMaxRange:U,isValidTime:N,isTimeValid:ce,isMonthValid:pe}},Ia=()=>{const e=G(()=>(a,r)=>a?.includes(r)),t=G(()=>(a,r)=>a.count?a.solo?!0:r===0:!0),n=G(()=>(a,r)=>a.count?a.solo?!0:r===a.count-1:!0);return{hideNavigationButtons:e,showLeftIcon:t,showRightIcon:n}},Es=(e,t,n)=>{const a=Z(0),r=ha({[Vt.timePicker]:!e.enableTimePicker||e.timePicker||e.monthPicker,[Vt.calendar]:!1,[Vt.header]:!1}),l=G(()=>e.monthPicker||e.timePicker),i=v=>{var h;if((h=e.flow)!=null&&h.length){if(!v&&l.value)return m();r[v]=!0,Object.keys(r).filter(k=>!r[k]).length||m()}},p=()=>{var v,h;(v=e.flow)!=null&&v.length&&a.value!==-1&&(a.value+=1,t("flow-step",a.value),m()),((h=e.flow)==null?void 0:h.length)===a.value&&it().then(()=>c())},c=()=>{a.value=-1},C=(v,h,...k)=>{var Y,f;e.flow[a.value]===v&&n.value&&((f=(Y=n.value)[h])==null||f.call(Y,...k))},m=(v=0)=>{v&&(a.value+=v),C(Xe.month,"toggleMonthPicker",!0),C(Xe.year,"toggleYearPicker",!0),C(Xe.calendar,"toggleTimePicker",!1,!0),C(Xe.time,"toggleTimePicker",!0,!0);const h=e.flow[a.value];(h===Xe.hours||h===Xe.minutes||h===Xe.seconds)&&C(h,"toggleTimePicker",!0,!0,h)};return{childMount:i,updateFlowStep:p,resetFlow:c,handleFlow:m,flowStep:a}},Bs={key:1,class:"dp__input_wrap"},Ns=["id","name","inputmode","placeholder","disabled","readonly","required","value","autocomplete","aria-label","aria-disabled","aria-invalid"],Ls={key:2,class:"dp--clear-btn"},Hs=["aria-label"],Vs=ze({compatConfig:{MODE:3},__name:"DatepickerInput",props:{isMenuOpen:{type:Boolean,default:!1},inputValue:{type:String,default:""},...Ya},emits:["clear","open","update:input-value","set-input-date","close","select-date","set-empty-date","toggle","focus-prev","focus","blur","real-blur","text-input"],setup(e,{expose:t,emit:n}){const a=n,r=e,{defaultedTextInput:l,defaultedAriaLabels:i,defaultedInline:p,defaultedConfig:c,defaultedRange:C,defaultedMultiDates:m,defaultedUI:v,getDefaultPattern:h,getDefaultStartTime:k}=Se(r),{checkMinMaxRange:Y}=Et(r),f=Z(),S=Z(null),I=Z(!1),U=Z(!1),A=G(()=>({dp__pointer:!r.disabled&&!r.readonly&&!l.value.enabled,dp__disabled:r.disabled,dp__input_readonly:!l.value.enabled,dp__input:!0,dp__input_icon_pad:!r.hideInputIcon,dp__input_valid:typeof r.state=="boolean"?r.state:!1,dp__input_invalid:typeof r.state=="boolean"?!r.state:!1,dp__input_focus:I.value||r.isMenuOpen,dp__input_reg:!l.value.enabled,...v.value.input??{}})),q=()=>{a("set-input-date",null),r.clearable&&r.autoApply&&(a("set-empty-date"),f.value=null)},ae=b=>{const oe=k();return ii(b,l.value.format??h(),oe??xr({},r.enableSeconds),r.inputValue,U.value,r.formatLocale)},E=b=>{const{rangeSeparator:oe}=l.value,[V,M]=b.split(`${oe}`);if(V){const o=ae(V.trim()),w=M?ae(M.trim()):null;if(Kt(o,w))return;const z=o&&w?[o,w]:[o];Y(w,z,0)&&(f.value=o?z:null)}},B=()=>{U.value=!0},ne=b=>{if(C.value.enabled)E(b);else if(m.value.enabled){const oe=b.split(";");f.value=oe.map(V=>ae(V.trim())).filter(V=>V)}else f.value=ae(b)},F=b=>{var oe;const V=typeof b=="string"?b:(oe=b.target)==null?void 0:oe.value;V!==""?(l.value.openMenu&&!r.isMenuOpen&&a("open"),ne(V),a("set-input-date",f.value)):q(),U.value=!1,a("update:input-value",V),a("text-input",b,f.value)},N=b=>{l.value.enabled?(ne(b.target.value),l.value.enterSubmit&&sn(f.value)&&r.inputValue!==""?(a("set-input-date",f.value,!0),f.value=null):l.value.enterSubmit&&r.inputValue===""&&(f.value=null,a("clear"))):pe(b)},ie=(b,oe)=>{l.value.enabled&&l.value.tabSubmit&&!oe&&ne(b.target.value),l.value.tabSubmit&&sn(f.value)&&r.inputValue!==""?(a("set-input-date",f.value,!0,!0),f.value=null):l.value.tabSubmit&&r.inputValue===""&&(f.value=null,a("clear",!0))},ce=()=>{I.value=!0,a("focus"),it().then(()=>{var b;l.value.enabled&&l.value.selectOnFocus&&((b=S.value)==null||b.select())})},pe=b=>{if(Yt(b,c.value,!0),l.value.enabled&&l.value.openMenu&&!p.value.input){if(l.value.openMenu==="open"&&!r.isMenuOpen)return a("open");if(l.value.openMenu==="toggle")return a("toggle")}else l.value.enabled||a("toggle")},g=()=>{a("real-blur"),I.value=!1,(!r.isMenuOpen||p.value.enabled&&p.value.input)&&a("blur"),r.autoApply&&l.value.enabled&&f.value&&!r.isMenuOpen&&(a("set-input-date",f.value),a("select-date"),f.value=null)},D=b=>{Yt(b,c.value,!0),a("clear")},y=b=>{if(b.key==="Tab"&&ie(b),b.key==="Enter"&&N(b),!l.value.enabled){if(b.code==="Tab")return;b.preventDefault()}},H=()=>{var b;(b=S.value)==null||b.focus({preventScroll:!0})},re=b=>{f.value=b},R=b=>{b.key===$e.tab&&ie(b,!0)};return t({focusInput:H,setParsedDate:re}),(b,oe)=>{var V,M,o;return P(),W("div",{onClick:pe},[b.$slots.trigger&&!b.$slots["dp-input"]&&!d(p).enabled?ue(b.$slots,"trigger",{key:0}):j("",!0),!b.$slots.trigger&&(!d(p).enabled||d(p).input)?(P(),W("div",Bs,[b.$slots["dp-input"]&&!b.$slots.trigger&&(!d(p).enabled||d(p).enabled&&d(p).input)?ue(b.$slots,"dp-input",{key:0,value:e.inputValue,isMenuOpen:e.isMenuOpen,onInput:F,onEnter:N,onTab:ie,onClear:D,onBlur:g,onKeypress:y,onPaste:B,onFocus:ce,openMenu:()=>b.$emit("open"),closeMenu:()=>b.$emit("close"),toggleMenu:()=>b.$emit("toggle")}):j("",!0),b.$slots["dp-input"]?j("",!0):(P(),W("input",{key:1,id:b.uid?`dp-input-${b.uid}`:void 0,ref_key:"inputRef",ref:S,"data-test":"dp-input",name:b.name,class:ke(A.value),inputmode:d(l).enabled?"text":"none",placeholder:b.placeholder,disabled:b.disabled,readonly:b.readonly,required:b.required,value:e.inputValue,autocomplete:b.autocomplete,"aria-label":(V=d(i))==null?void 0:V.input,"aria-disabled":b.disabled||void 0,"aria-invalid":b.state===!1?!0:void 0,onInput:F,onBlur:g,onFocus:ce,onKeypress:y,onKeydown:oe[0]||(oe[0]=w=>y(w)),onPaste:B},null,42,Ns)),ye("div",{onClick:oe[3]||(oe[3]=w=>a("toggle"))},[b.$slots["input-icon"]&&!b.hideInputIcon?(P(),W("span",{key:0,class:"dp__input_icon",onClick:oe[1]||(oe[1]=w=>a("toggle"))},[ue(b.$slots,"input-icon")])):j("",!0),!b.$slots["input-icon"]&&!b.hideInputIcon&&!b.$slots["dp-input"]?(P(),De(d(aa),{key:1,"aria-label":(M=d(i))==null?void 0:M.calendarIcon,class:"dp__input_icon dp__input_icons",onClick:oe[2]||(oe[2]=w=>a("toggle"))},null,8,["aria-label"])):j("",!0)]),b.$slots["clear-icon"]&&e.inputValue&&b.clearable&&!b.disabled&&!b.readonly?(P(),W("span",Ls,[ue(b.$slots,"clear-icon",{clear:D})])):j("",!0),b.clearable&&!b.$slots["clear-icon"]&&e.inputValue&&!b.disabled&&!b.readonly?(P(),W("button",{key:3,"aria-label":(o=d(i))==null?void 0:o.clearInput,class:"dp--clear-btn",type:"button",onKeydown:oe[4]||(oe[4]=w=>d(et)(w,()=>D(w),!0,R)),onClick:oe[5]||(oe[5]=va(w=>D(w),["prevent"]))},[ot(d(fr),{class:"dp__input_icons","data-test":"clear-icon"})],40,Hs)):j("",!0)])):j("",!0)])}}}),Fs=typeof window<"u"?window:void 0,tn=()=>{},qs=e=>Fr()?(qr(e),!0):!1,Ws=(e,t,n,a)=>{if(!e)return tn;let r=tn;const l=ct(()=>d(e),p=>{r(),p&&(p.addEventListener(t,n,a),r=()=>{p.removeEventListener(t,n,a),r=tn})},{immediate:!0,flush:"post"}),i=()=>{l(),r()};return qs(i),i},Qs=(e,t,n,a={})=>{const{window:r=Fs,event:l="pointerdown"}=a;return r?Ws(r,l,i=>{const p=Fe(e),c=Fe(t);!p||!c||p===i.target||i.composedPath().includes(p)||i.composedPath().includes(c)||n(i)},{passive:!0}):void 0},zs=ze({compatConfig:{MODE:3},__name:"VueDatePicker",props:{...Ya},emits:["update:model-value","update:model-timezone-value","text-submit","closed","cleared","open","focus","blur","internal-model-change","recalculate-position","flow-step","update-month-year","invalid-select","invalid-fixed-range","tooltip-open","tooltip-close","time-picker-open","time-picker-close","am-pm-change","range-start","range-end","date-update","invalid-date","overlay-toggle","text-input"],setup(e,{expose:t,emit:n}){const a=n,r=e,l=qt(),i=Z(!1),p=ca(r,"modelValue"),c=ca(r,"timezone"),C=Z(null),m=Z(null),v=Z(null),h=Z(!1),k=Z(null),Y=Z(!1),f=Z(!1),S=Z(!1),I=Z(!1),{setMenuFocused:U,setShiftKey:A}=Ar(),{clearArrowNav:q}=It(),{validateDate:ae,isValidTime:E}=Et(r),{defaultedTransitions:B,defaultedTextInput:ne,defaultedInline:F,defaultedConfig:N,defaultedRange:ie,defaultedMultiDates:ce}=Se(r),{menuTransition:pe,showTransition:g}=ga(B);Ke(()=>{w(r.modelValue),it().then(()=>{if(!F.value.enabled){const O=oe(k.value);O?.addEventListener("scroll",J),window?.addEventListener("resize",$)}}),F.value.enabled&&(i.value=!0),window?.addEventListener("keyup",ge),window?.addEventListener("keydown",x)}),Ca(()=>{if(!F.value.enabled){const O=oe(k.value);O?.removeEventListener("scroll",J),window?.removeEventListener("resize",$)}window?.removeEventListener("keyup",ge),window?.removeEventListener("keydown",x)});const D=lt(l,"all",r.presetDates),y=lt(l,"input");ct([p,c],()=>{w(p.value)},{deep:!0});const{openOnTop:H,menuStyle:re,xCorrect:R,setMenuPosition:b,getScrollableParent:oe,shadowRender:V}=Ys({menuRef:C,menuRefInner:m,inputRef:v,pickerWrapperRef:k,inline:F,emit:a,props:r,slots:l}),{inputValue:M,internalModelValue:o,parseExternalModelValue:w,emitModelValue:z,formatInputValue:u,checkBeforeEmit:le}=$i(a,r,h),fe=G(()=>({dp__main:!0,dp__theme_dark:r.dark,dp__theme_light:!r.dark,dp__flex_display:F.value.enabled,"dp--flex-display-collapsed":S.value,dp__flex_display_with_input:F.value.input})),Ve=G(()=>r.dark?"dp__theme_dark":"dp__theme_light"),T=G(()=>r.teleport?{to:typeof r.teleport=="boolean"?"body":r.teleport,disabled:!r.teleport||F.value.enabled}:{}),K=G(()=>({class:"dp__outer_menu_wrap"})),s=G(()=>F.value.enabled&&(r.timePicker||r.monthPicker||r.yearPicker||r.quarterPicker)),L=()=>{var O,ee;return(ee=(O=v.value)==null?void 0:O.$el)==null?void 0:ee.getBoundingClientRect()},J=()=>{i.value&&(N.value.closeOnScroll?rt():b())},$=()=>{var O;i.value&&b();const ee=(O=m.value)==null?void 0:O.$el.getBoundingClientRect().width;S.value=document.body.offsetWidth<=ee},ge=O=>{O.key==="Tab"&&!F.value.enabled&&!r.teleport&&N.value.tabOutClosesMenu&&(k.value.contains(document.activeElement)||rt()),f.value=O.shiftKey},x=O=>{f.value=O.shiftKey},X=()=>{!r.disabled&&!r.readonly&&(V(Un,r),b(!1),i.value=!0,i.value&&a("open"),i.value||na(),w(r.modelValue))},de=()=>{var O;M.value="",na(),(O=v.value)==null||O.setParsedDate(null),a("update:model-value",null),a("update:model-timezone-value",null),a("cleared"),N.value.closeOnClearValue&&rt()},be=()=>{const O=o.value;return!O||!Array.isArray(O)&&ae(O)?!0:Array.isArray(O)?ce.value.enabled||O.length===2&&ae(O[0])&&ae(O[1])?!0:ie.value.partialRange&&!r.timePicker?ae(O[0]):!1:!1},st=()=>{le()&&be()?(z(),rt()):a("invalid-select",o.value)},me=O=>{Pt(),z(),N.value.closeOnAutoApply&&!O&&rt()},Pt=()=>{v.value&&ne.value.enabled&&v.value.setParsedDate(o.value)},gt=(O=!1)=>{r.autoApply&&E(o.value)&&be()&&(ie.value.enabled&&Array.isArray(o.value)?(ie.value.partialRange||o.value.length===2)&&me(O):me(O))},na=()=>{ne.value.enabled||(o.value=null)},rt=()=>{F.value.enabled||(i.value&&(i.value=!1,R.value=!1,U(!1),A(!1),q(),a("closed"),M.value&&w(p.value)),na(),a("blur"))},ra=(O,ee,se=!1)=>{if(!O){o.value=null;return}const Je=Array.isArray(O)?!O.some(Bt=>!ae(Bt)):ae(O),ut=E(O);Je&&ut?(I.value=!0,o.value=O,ee&&(Y.value=se,st(),a("text-submit")),it().then(()=>{I.value=!1})):a("invalid-date",O)},Ea=()=>{r.autoApply&&E(o.value)&&z(),Pt()},wa=()=>i.value?rt():X(),Ba=O=>{o.value=O},Na=()=>{ne.value.enabled&&(h.value=!0,u()),a("focus")},La=()=>{if(ne.value.enabled&&(h.value=!1,w(r.modelValue),Y.value)){const O=li(k.value,f.value);O?.focus()}a("blur")},Ha=O=>{m.value&&m.value.updateMonthYear(0,{month:Ln(O.month),year:Ln(O.year)})},Va=O=>{w(O??r.modelValue)},Fa=(O,ee)=>{var se;(se=m.value)==null||se.switchView(O,ee)},_=O=>N.value.onClickOutside?N.value.onClickOutside(O):rt(),te=(O=0)=>{var ee;(ee=m.value)==null||ee.handleFlow(O)};return Qs(C,v,()=>_(be)),t({closeMenu:rt,selectDate:st,clearValue:de,openMenu:X,onScroll:J,formatInputValue:u,updateInternalModelValue:Ba,setMonthYear:Ha,parseModel:Va,switchView:Fa,toggleMenu:wa,handleFlow:te,dpWrapMenuRef:C}),(O,ee)=>(P(),W("div",{ref_key:"pickerWrapperRef",ref:k,class:ke(fe.value),"data-datepicker-instance":""},[ot(Vs,Qe({ref_key:"inputRef",ref:v,"input-value":d(M),"onUpdate:inputValue":ee[0]||(ee[0]=se=>Pn(M)?M.value=se:null),"is-menu-open":i.value},O.$props,{onClear:de,onOpen:X,onSetInputDate:ra,onSetEmptyDate:d(z),onSelectDate:st,onToggle:wa,onClose:rt,onFocus:Na,onBlur:La,onRealBlur:ee[1]||(ee[1]=se=>h.value=!1),onTextInput:ee[2]||(ee[2]=se=>O.$emit("text-input",se))}),je({_:2},[Ye(d(y),(se,Je)=>({name:se,fn:_e(ut=>[ue(O.$slots,se,We(at(ut)))])}))]),1040,["input-value","is-menu-open","onSetEmptyDate"]),(P(),De(Oa(O.teleport?Br:"div"),We(at(T.value)),{default:_e(()=>[ot(ta,{name:d(pe)(d(H)),css:d(g)&&!d(F).enabled},{default:_e(()=>[i.value?(P(),W("div",Qe({key:0,ref_key:"dpWrapMenuRef",ref:C},K.value,{class:{"dp--menu-wrapper":!d(F).enabled},style:d(F).enabled?void 0:d(re)}),[ot(Un,Qe({ref_key:"dpMenuRef",ref:m},O.$props,{"internal-model-value":d(o),"onUpdate:internalModelValue":ee[3]||(ee[3]=se=>Pn(o)?o.value=se:null),class:{[Ve.value]:!0,"dp--menu-wrapper":O.teleport},"open-on-top":d(H),"no-overlay-focus":s.value,collapse:S.value,"get-input-rect":L,"is-text-input-date":I.value,onClosePicker:rt,onSelectDate:st,onAutoApply:gt,onTimeUpdate:Ea,onFlowStep:ee[4]||(ee[4]=se=>O.$emit("flow-step",se)),onUpdateMonthYear:ee[5]||(ee[5]=se=>O.$emit("update-month-year",se)),onInvalidSelect:ee[6]||(ee[6]=se=>O.$emit("invalid-select",d(o))),onAutoApplyInvalid:ee[7]||(ee[7]=se=>O.$emit("invalid-select",se)),onInvalidFixedRange:ee[8]||(ee[8]=se=>O.$emit("invalid-fixed-range",se)),onRecalculatePosition:d(b),onTooltipOpen:ee[9]||(ee[9]=se=>O.$emit("tooltip-open",se)),onTooltipClose:ee[10]||(ee[10]=se=>O.$emit("tooltip-close",se)),onTimePickerOpen:ee[11]||(ee[11]=se=>O.$emit("time-picker-open",se)),onTimePickerClose:ee[12]||(ee[12]=se=>O.$emit("time-picker-close",se)),onAmPmChange:ee[13]||(ee[13]=se=>O.$emit("am-pm-change",se)),onRangeStart:ee[14]||(ee[14]=se=>O.$emit("range-start",se)),onRangeEnd:ee[15]||(ee[15]=se=>O.$emit("range-end",se)),onDateUpdate:ee[16]||(ee[16]=se=>O.$emit("date-update",se)),onInvalidDate:ee[17]||(ee[17]=se=>O.$emit("invalid-date",se)),onOverlayToggle:ee[18]||(ee[18]=se=>O.$emit("overlay-toggle",se))}),je({_:2},[Ye(d(D),(se,Je)=>({name:se,fn:_e(ut=>[ue(O.$slots,se,We(at({...ut})))])}))]),1040,["internal-model-value","class","open-on-top","no-overlay-focus","collapse","is-text-input-date","onRecalculatePosition"])],16)):j("",!0)]),_:3},8,["name","css"])]),_:3},16))],2))}}),Ir=(()=>{const e=zs;return e.install=t=>{t.component("Vue3DatePicker",e)},e})(),Us=Object.freeze(Object.defineProperty({__proto__:null,default:Ir},Symbol.toStringTag,{value:"Module"}));Object.entries(Us).forEach(([e,t])=>{e!=="default"&&(Ir[e]=t)});export{Ir as V}; diff --git a/src/static/app/dist/index.html b/src/static/app/dist/index.html index 047ee42..bba69dd 100644 --- a/src/static/app/dist/index.html +++ b/src/static/app/dist/index.html @@ -10,7 +10,7 @@ WGDashboard - + diff --git a/src/static/client/dist/assets/index-BmGX7v2g.css b/src/static/client/dist/assets/index-1THt9Piw.css similarity index 98% rename from src/static/client/dist/assets/index-BmGX7v2g.css rename to src/static/client/dist/assets/index-1THt9Piw.css index 9f545f3..134a0c4 100644 --- a/src/static/client/dist/assets/index-BmGX7v2g.css +++ b/src/static/client/dist/assets/index-1THt9Piw.css @@ -6,4 +6,4 @@ * Bootstrap Icons v1.13.1 (https://icons.getbootstrap.com/) * Copyright 2019-2024 The Bootstrap Authors * Licensed under MIT (https://github.com/twbs/icons/blob/main/LICENSE) - */@font-face{font-display:block;font-family:bootstrap-icons;src:url(/static/client/dist/assets/bootstrap-icons-mSm7cUeB.woff2?e34853135f9e39acf64315236852cd5a) format("woff2"),url(/static/client/dist/assets/bootstrap-icons-BeopsB42.woff?e34853135f9e39acf64315236852cd5a) format("woff")}.bi:before,[class^=bi-]:before,[class*=" bi-"]:before{display:inline-block;font-family:bootstrap-icons!important;font-style:normal;font-weight:400!important;font-variant:normal;text-transform:none;line-height:1;vertical-align:-.125em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bi-123:before{content:""}.bi-alarm-fill:before{content:""}.bi-alarm:before{content:""}.bi-align-bottom:before{content:""}.bi-align-center:before{content:""}.bi-align-end:before{content:""}.bi-align-middle:before{content:""}.bi-align-start:before{content:""}.bi-align-top:before{content:""}.bi-alt:before{content:""}.bi-app-indicator:before{content:""}.bi-app:before{content:""}.bi-archive-fill:before{content:""}.bi-archive:before{content:""}.bi-arrow-90deg-down:before{content:""}.bi-arrow-90deg-left:before{content:""}.bi-arrow-90deg-right:before{content:""}.bi-arrow-90deg-up:before{content:""}.bi-arrow-bar-down:before{content:""}.bi-arrow-bar-left:before{content:""}.bi-arrow-bar-right:before{content:""}.bi-arrow-bar-up:before{content:""}.bi-arrow-clockwise:before{content:""}.bi-arrow-counterclockwise:before{content:""}.bi-arrow-down-circle-fill:before{content:""}.bi-arrow-down-circle:before{content:""}.bi-arrow-down-left-circle-fill:before{content:""}.bi-arrow-down-left-circle:before{content:""}.bi-arrow-down-left-square-fill:before{content:""}.bi-arrow-down-left-square:before{content:""}.bi-arrow-down-left:before{content:""}.bi-arrow-down-right-circle-fill:before{content:""}.bi-arrow-down-right-circle:before{content:""}.bi-arrow-down-right-square-fill:before{content:""}.bi-arrow-down-right-square:before{content:""}.bi-arrow-down-right:before{content:""}.bi-arrow-down-short:before{content:""}.bi-arrow-down-square-fill:before{content:""}.bi-arrow-down-square:before{content:""}.bi-arrow-down-up:before{content:""}.bi-arrow-down:before{content:""}.bi-arrow-left-circle-fill:before{content:""}.bi-arrow-left-circle:before{content:""}.bi-arrow-left-right:before{content:""}.bi-arrow-left-short:before{content:""}.bi-arrow-left-square-fill:before{content:""}.bi-arrow-left-square:before{content:""}.bi-arrow-left:before{content:""}.bi-arrow-repeat:before{content:""}.bi-arrow-return-left:before{content:""}.bi-arrow-return-right:before{content:""}.bi-arrow-right-circle-fill:before{content:""}.bi-arrow-right-circle:before{content:""}.bi-arrow-right-short:before{content:""}.bi-arrow-right-square-fill:before{content:""}.bi-arrow-right-square:before{content:""}.bi-arrow-right:before{content:""}.bi-arrow-up-circle-fill:before{content:""}.bi-arrow-up-circle:before{content:""}.bi-arrow-up-left-circle-fill:before{content:""}.bi-arrow-up-left-circle:before{content:""}.bi-arrow-up-left-square-fill:before{content:""}.bi-arrow-up-left-square:before{content:""}.bi-arrow-up-left:before{content:""}.bi-arrow-up-right-circle-fill:before{content:""}.bi-arrow-up-right-circle:before{content:""}.bi-arrow-up-right-square-fill:before{content:""}.bi-arrow-up-right-square:before{content:""}.bi-arrow-up-right:before{content:""}.bi-arrow-up-short:before{content:""}.bi-arrow-up-square-fill:before{content:""}.bi-arrow-up-square:before{content:""}.bi-arrow-up:before{content:""}.bi-arrows-angle-contract:before{content:""}.bi-arrows-angle-expand:before{content:""}.bi-arrows-collapse:before{content:""}.bi-arrows-expand:before{content:""}.bi-arrows-fullscreen:before{content:""}.bi-arrows-move:before{content:""}.bi-aspect-ratio-fill:before{content:""}.bi-aspect-ratio:before{content:""}.bi-asterisk:before{content:""}.bi-at:before{content:""}.bi-award-fill:before{content:""}.bi-award:before{content:""}.bi-back:before{content:""}.bi-backspace-fill:before{content:""}.bi-backspace-reverse-fill:before{content:""}.bi-backspace-reverse:before{content:""}.bi-backspace:before{content:""}.bi-badge-3d-fill:before{content:""}.bi-badge-3d:before{content:""}.bi-badge-4k-fill:before{content:""}.bi-badge-4k:before{content:""}.bi-badge-8k-fill:before{content:""}.bi-badge-8k:before{content:""}.bi-badge-ad-fill:before{content:""}.bi-badge-ad:before{content:""}.bi-badge-ar-fill:before{content:""}.bi-badge-ar:before{content:""}.bi-badge-cc-fill:before{content:""}.bi-badge-cc:before{content:""}.bi-badge-hd-fill:before{content:""}.bi-badge-hd:before{content:""}.bi-badge-tm-fill:before{content:""}.bi-badge-tm:before{content:""}.bi-badge-vo-fill:before{content:""}.bi-badge-vo:before{content:""}.bi-badge-vr-fill:before{content:""}.bi-badge-vr:before{content:""}.bi-badge-wc-fill:before{content:""}.bi-badge-wc:before{content:""}.bi-bag-check-fill:before{content:""}.bi-bag-check:before{content:""}.bi-bag-dash-fill:before{content:""}.bi-bag-dash:before{content:""}.bi-bag-fill:before{content:""}.bi-bag-plus-fill:before{content:""}.bi-bag-plus:before{content:""}.bi-bag-x-fill:before{content:""}.bi-bag-x:before{content:""}.bi-bag:before{content:""}.bi-bar-chart-fill:before{content:""}.bi-bar-chart-line-fill:before{content:""}.bi-bar-chart-line:before{content:""}.bi-bar-chart-steps:before{content:""}.bi-bar-chart:before{content:""}.bi-basket-fill:before{content:""}.bi-basket:before{content:""}.bi-basket2-fill:before{content:""}.bi-basket2:before{content:""}.bi-basket3-fill:before{content:""}.bi-basket3:before{content:""}.bi-battery-charging:before{content:""}.bi-battery-full:before{content:""}.bi-battery-half:before{content:""}.bi-battery:before{content:""}.bi-bell-fill:before{content:""}.bi-bell:before{content:""}.bi-bezier:before{content:""}.bi-bezier2:before{content:""}.bi-bicycle:before{content:""}.bi-binoculars-fill:before{content:""}.bi-binoculars:before{content:""}.bi-blockquote-left:before{content:""}.bi-blockquote-right:before{content:""}.bi-book-fill:before{content:""}.bi-book-half:before{content:""}.bi-book:before{content:""}.bi-bookmark-check-fill:before{content:""}.bi-bookmark-check:before{content:""}.bi-bookmark-dash-fill:before{content:""}.bi-bookmark-dash:before{content:""}.bi-bookmark-fill:before{content:""}.bi-bookmark-heart-fill:before{content:""}.bi-bookmark-heart:before{content:""}.bi-bookmark-plus-fill:before{content:""}.bi-bookmark-plus:before{content:""}.bi-bookmark-star-fill:before{content:""}.bi-bookmark-star:before{content:""}.bi-bookmark-x-fill:before{content:""}.bi-bookmark-x:before{content:""}.bi-bookmark:before{content:""}.bi-bookmarks-fill:before{content:""}.bi-bookmarks:before{content:""}.bi-bookshelf:before{content:""}.bi-bootstrap-fill:before{content:""}.bi-bootstrap-reboot:before{content:""}.bi-bootstrap:before{content:""}.bi-border-all:before{content:""}.bi-border-bottom:before{content:""}.bi-border-center:before{content:""}.bi-border-inner:before{content:""}.bi-border-left:before{content:""}.bi-border-middle:before{content:""}.bi-border-outer:before{content:""}.bi-border-right:before{content:""}.bi-border-style:before{content:""}.bi-border-top:before{content:""}.bi-border-width:before{content:""}.bi-border:before{content:""}.bi-bounding-box-circles:before{content:""}.bi-bounding-box:before{content:""}.bi-box-arrow-down-left:before{content:""}.bi-box-arrow-down-right:before{content:""}.bi-box-arrow-down:before{content:""}.bi-box-arrow-in-down-left:before{content:""}.bi-box-arrow-in-down-right:before{content:""}.bi-box-arrow-in-down:before{content:""}.bi-box-arrow-in-left:before{content:""}.bi-box-arrow-in-right:before{content:""}.bi-box-arrow-in-up-left:before{content:""}.bi-box-arrow-in-up-right:before{content:""}.bi-box-arrow-in-up:before{content:""}.bi-box-arrow-left:before{content:""}.bi-box-arrow-right:before{content:""}.bi-box-arrow-up-left:before{content:""}.bi-box-arrow-up-right:before{content:""}.bi-box-arrow-up:before{content:""}.bi-box-seam:before{content:""}.bi-box:before{content:""}.bi-braces:before{content:""}.bi-bricks:before{content:""}.bi-briefcase-fill:before{content:""}.bi-briefcase:before{content:""}.bi-brightness-alt-high-fill:before{content:""}.bi-brightness-alt-high:before{content:""}.bi-brightness-alt-low-fill:before{content:""}.bi-brightness-alt-low:before{content:""}.bi-brightness-high-fill:before{content:""}.bi-brightness-high:before{content:""}.bi-brightness-low-fill:before{content:""}.bi-brightness-low:before{content:""}.bi-broadcast-pin:before{content:""}.bi-broadcast:before{content:""}.bi-brush-fill:before{content:""}.bi-brush:before{content:""}.bi-bucket-fill:before{content:""}.bi-bucket:before{content:""}.bi-bug-fill:before{content:""}.bi-bug:before{content:""}.bi-building:before{content:""}.bi-bullseye:before{content:""}.bi-calculator-fill:before{content:""}.bi-calculator:before{content:""}.bi-calendar-check-fill:before{content:""}.bi-calendar-check:before{content:""}.bi-calendar-date-fill:before{content:""}.bi-calendar-date:before{content:""}.bi-calendar-day-fill:before{content:""}.bi-calendar-day:before{content:""}.bi-calendar-event-fill:before{content:""}.bi-calendar-event:before{content:""}.bi-calendar-fill:before{content:""}.bi-calendar-minus-fill:before{content:""}.bi-calendar-minus:before{content:""}.bi-calendar-month-fill:before{content:""}.bi-calendar-month:before{content:""}.bi-calendar-plus-fill:before{content:""}.bi-calendar-plus:before{content:""}.bi-calendar-range-fill:before{content:""}.bi-calendar-range:before{content:""}.bi-calendar-week-fill:before{content:""}.bi-calendar-week:before{content:""}.bi-calendar-x-fill:before{content:""}.bi-calendar-x:before{content:""}.bi-calendar:before{content:""}.bi-calendar2-check-fill:before{content:""}.bi-calendar2-check:before{content:""}.bi-calendar2-date-fill:before{content:""}.bi-calendar2-date:before{content:""}.bi-calendar2-day-fill:before{content:""}.bi-calendar2-day:before{content:""}.bi-calendar2-event-fill:before{content:""}.bi-calendar2-event:before{content:""}.bi-calendar2-fill:before{content:""}.bi-calendar2-minus-fill:before{content:""}.bi-calendar2-minus:before{content:""}.bi-calendar2-month-fill:before{content:""}.bi-calendar2-month:before{content:""}.bi-calendar2-plus-fill:before{content:""}.bi-calendar2-plus:before{content:""}.bi-calendar2-range-fill:before{content:""}.bi-calendar2-range:before{content:""}.bi-calendar2-week-fill:before{content:""}.bi-calendar2-week:before{content:""}.bi-calendar2-x-fill:before{content:""}.bi-calendar2-x:before{content:""}.bi-calendar2:before{content:""}.bi-calendar3-event-fill:before{content:""}.bi-calendar3-event:before{content:""}.bi-calendar3-fill:before{content:""}.bi-calendar3-range-fill:before{content:""}.bi-calendar3-range:before{content:""}.bi-calendar3-week-fill:before{content:""}.bi-calendar3-week:before{content:""}.bi-calendar3:before{content:""}.bi-calendar4-event:before{content:""}.bi-calendar4-range:before{content:""}.bi-calendar4-week:before{content:""}.bi-calendar4:before{content:""}.bi-camera-fill:before{content:""}.bi-camera-reels-fill:before{content:""}.bi-camera-reels:before{content:""}.bi-camera-video-fill:before{content:""}.bi-camera-video-off-fill:before{content:""}.bi-camera-video-off:before{content:""}.bi-camera-video:before{content:""}.bi-camera:before{content:""}.bi-camera2:before{content:""}.bi-capslock-fill:before{content:""}.bi-capslock:before{content:""}.bi-card-checklist:before{content:""}.bi-card-heading:before{content:""}.bi-card-image:before{content:""}.bi-card-list:before{content:""}.bi-card-text:before{content:""}.bi-caret-down-fill:before{content:""}.bi-caret-down-square-fill:before{content:""}.bi-caret-down-square:before{content:""}.bi-caret-down:before{content:""}.bi-caret-left-fill:before{content:""}.bi-caret-left-square-fill:before{content:""}.bi-caret-left-square:before{content:""}.bi-caret-left:before{content:""}.bi-caret-right-fill:before{content:""}.bi-caret-right-square-fill:before{content:""}.bi-caret-right-square:before{content:""}.bi-caret-right:before{content:""}.bi-caret-up-fill:before{content:""}.bi-caret-up-square-fill:before{content:""}.bi-caret-up-square:before{content:""}.bi-caret-up:before{content:""}.bi-cart-check-fill:before{content:""}.bi-cart-check:before{content:""}.bi-cart-dash-fill:before{content:""}.bi-cart-dash:before{content:""}.bi-cart-fill:before{content:""}.bi-cart-plus-fill:before{content:""}.bi-cart-plus:before{content:""}.bi-cart-x-fill:before{content:""}.bi-cart-x:before{content:""}.bi-cart:before{content:""}.bi-cart2:before{content:""}.bi-cart3:before{content:""}.bi-cart4:before{content:""}.bi-cash-stack:before{content:""}.bi-cash:before{content:""}.bi-cast:before{content:""}.bi-chat-dots-fill:before{content:""}.bi-chat-dots:before{content:""}.bi-chat-fill:before{content:""}.bi-chat-left-dots-fill:before{content:""}.bi-chat-left-dots:before{content:""}.bi-chat-left-fill:before{content:""}.bi-chat-left-quote-fill:before{content:""}.bi-chat-left-quote:before{content:""}.bi-chat-left-text-fill:before{content:""}.bi-chat-left-text:before{content:""}.bi-chat-left:before{content:""}.bi-chat-quote-fill:before{content:""}.bi-chat-quote:before{content:""}.bi-chat-right-dots-fill:before{content:""}.bi-chat-right-dots:before{content:""}.bi-chat-right-fill:before{content:""}.bi-chat-right-quote-fill:before{content:""}.bi-chat-right-quote:before{content:""}.bi-chat-right-text-fill:before{content:""}.bi-chat-right-text:before{content:""}.bi-chat-right:before{content:""}.bi-chat-square-dots-fill:before{content:""}.bi-chat-square-dots:before{content:""}.bi-chat-square-fill:before{content:""}.bi-chat-square-quote-fill:before{content:""}.bi-chat-square-quote:before{content:""}.bi-chat-square-text-fill:before{content:""}.bi-chat-square-text:before{content:""}.bi-chat-square:before{content:""}.bi-chat-text-fill:before{content:""}.bi-chat-text:before{content:""}.bi-chat:before{content:""}.bi-check-all:before{content:""}.bi-check-circle-fill:before{content:""}.bi-check-circle:before{content:""}.bi-check-square-fill:before{content:""}.bi-check-square:before{content:""}.bi-check:before{content:""}.bi-check2-all:before{content:""}.bi-check2-circle:before{content:""}.bi-check2-square:before{content:""}.bi-check2:before{content:""}.bi-chevron-bar-contract:before{content:""}.bi-chevron-bar-down:before{content:""}.bi-chevron-bar-expand:before{content:""}.bi-chevron-bar-left:before{content:""}.bi-chevron-bar-right:before{content:""}.bi-chevron-bar-up:before{content:""}.bi-chevron-compact-down:before{content:""}.bi-chevron-compact-left:before{content:""}.bi-chevron-compact-right:before{content:""}.bi-chevron-compact-up:before{content:""}.bi-chevron-contract:before{content:""}.bi-chevron-double-down:before{content:""}.bi-chevron-double-left:before{content:""}.bi-chevron-double-right:before{content:""}.bi-chevron-double-up:before{content:""}.bi-chevron-down:before{content:""}.bi-chevron-expand:before{content:""}.bi-chevron-left:before{content:""}.bi-chevron-right:before{content:""}.bi-chevron-up:before{content:""}.bi-circle-fill:before{content:""}.bi-circle-half:before{content:""}.bi-circle-square:before{content:""}.bi-circle:before{content:""}.bi-clipboard-check:before{content:""}.bi-clipboard-data:before{content:""}.bi-clipboard-minus:before{content:""}.bi-clipboard-plus:before{content:""}.bi-clipboard-x:before{content:""}.bi-clipboard:before{content:""}.bi-clock-fill:before{content:""}.bi-clock-history:before{content:""}.bi-clock:before{content:""}.bi-cloud-arrow-down-fill:before{content:""}.bi-cloud-arrow-down:before{content:""}.bi-cloud-arrow-up-fill:before{content:""}.bi-cloud-arrow-up:before{content:""}.bi-cloud-check-fill:before{content:""}.bi-cloud-check:before{content:""}.bi-cloud-download-fill:before{content:""}.bi-cloud-download:before{content:""}.bi-cloud-drizzle-fill:before{content:""}.bi-cloud-drizzle:before{content:""}.bi-cloud-fill:before{content:""}.bi-cloud-fog-fill:before{content:""}.bi-cloud-fog:before{content:""}.bi-cloud-fog2-fill:before{content:""}.bi-cloud-fog2:before{content:""}.bi-cloud-hail-fill:before{content:""}.bi-cloud-hail:before{content:""}.bi-cloud-haze-fill:before{content:""}.bi-cloud-haze:before{content:""}.bi-cloud-haze2-fill:before{content:""}.bi-cloud-lightning-fill:before{content:""}.bi-cloud-lightning-rain-fill:before{content:""}.bi-cloud-lightning-rain:before{content:""}.bi-cloud-lightning:before{content:""}.bi-cloud-minus-fill:before{content:""}.bi-cloud-minus:before{content:""}.bi-cloud-moon-fill:before{content:""}.bi-cloud-moon:before{content:""}.bi-cloud-plus-fill:before{content:""}.bi-cloud-plus:before{content:""}.bi-cloud-rain-fill:before{content:""}.bi-cloud-rain-heavy-fill:before{content:""}.bi-cloud-rain-heavy:before{content:""}.bi-cloud-rain:before{content:""}.bi-cloud-slash-fill:before{content:""}.bi-cloud-slash:before{content:""}.bi-cloud-sleet-fill:before{content:""}.bi-cloud-sleet:before{content:""}.bi-cloud-snow-fill:before{content:""}.bi-cloud-snow:before{content:""}.bi-cloud-sun-fill:before{content:""}.bi-cloud-sun:before{content:""}.bi-cloud-upload-fill:before{content:""}.bi-cloud-upload:before{content:""}.bi-cloud:before{content:""}.bi-clouds-fill:before{content:""}.bi-clouds:before{content:""}.bi-cloudy-fill:before{content:""}.bi-cloudy:before{content:""}.bi-code-slash:before{content:""}.bi-code-square:before{content:""}.bi-code:before{content:""}.bi-collection-fill:before{content:""}.bi-collection-play-fill:before{content:""}.bi-collection-play:before{content:""}.bi-collection:before{content:""}.bi-columns-gap:before{content:""}.bi-columns:before{content:""}.bi-command:before{content:""}.bi-compass-fill:before{content:""}.bi-compass:before{content:""}.bi-cone-striped:before{content:""}.bi-cone:before{content:""}.bi-controller:before{content:""}.bi-cpu-fill:before{content:""}.bi-cpu:before{content:""}.bi-credit-card-2-back-fill:before{content:""}.bi-credit-card-2-back:before{content:""}.bi-credit-card-2-front-fill:before{content:""}.bi-credit-card-2-front:before{content:""}.bi-credit-card-fill:before{content:""}.bi-credit-card:before{content:""}.bi-crop:before{content:""}.bi-cup-fill:before{content:""}.bi-cup-straw:before{content:""}.bi-cup:before{content:""}.bi-cursor-fill:before{content:""}.bi-cursor-text:before{content:""}.bi-cursor:before{content:""}.bi-dash-circle-dotted:before{content:""}.bi-dash-circle-fill:before{content:""}.bi-dash-circle:before{content:""}.bi-dash-square-dotted:before{content:""}.bi-dash-square-fill:before{content:""}.bi-dash-square:before{content:""}.bi-dash:before{content:""}.bi-diagram-2-fill:before{content:""}.bi-diagram-2:before{content:""}.bi-diagram-3-fill:before{content:""}.bi-diagram-3:before{content:""}.bi-diamond-fill:before{content:""}.bi-diamond-half:before{content:""}.bi-diamond:before{content:""}.bi-dice-1-fill:before{content:""}.bi-dice-1:before{content:""}.bi-dice-2-fill:before{content:""}.bi-dice-2:before{content:""}.bi-dice-3-fill:before{content:""}.bi-dice-3:before{content:""}.bi-dice-4-fill:before{content:""}.bi-dice-4:before{content:""}.bi-dice-5-fill:before{content:""}.bi-dice-5:before{content:""}.bi-dice-6-fill:before{content:""}.bi-dice-6:before{content:""}.bi-disc-fill:before{content:""}.bi-disc:before{content:""}.bi-discord:before{content:""}.bi-display-fill:before{content:""}.bi-display:before{content:""}.bi-distribute-horizontal:before{content:""}.bi-distribute-vertical:before{content:""}.bi-door-closed-fill:before{content:""}.bi-door-closed:before{content:""}.bi-door-open-fill:before{content:""}.bi-door-open:before{content:""}.bi-dot:before{content:""}.bi-download:before{content:""}.bi-droplet-fill:before{content:""}.bi-droplet-half:before{content:""}.bi-droplet:before{content:""}.bi-earbuds:before{content:""}.bi-easel-fill:before{content:""}.bi-easel:before{content:""}.bi-egg-fill:before{content:""}.bi-egg-fried:before{content:""}.bi-egg:before{content:""}.bi-eject-fill:before{content:""}.bi-eject:before{content:""}.bi-emoji-angry-fill:before{content:""}.bi-emoji-angry:before{content:""}.bi-emoji-dizzy-fill:before{content:""}.bi-emoji-dizzy:before{content:""}.bi-emoji-expressionless-fill:before{content:""}.bi-emoji-expressionless:before{content:""}.bi-emoji-frown-fill:before{content:""}.bi-emoji-frown:before{content:""}.bi-emoji-heart-eyes-fill:before{content:""}.bi-emoji-heart-eyes:before{content:""}.bi-emoji-laughing-fill:before{content:""}.bi-emoji-laughing:before{content:""}.bi-emoji-neutral-fill:before{content:""}.bi-emoji-neutral:before{content:""}.bi-emoji-smile-fill:before{content:""}.bi-emoji-smile-upside-down-fill:before{content:""}.bi-emoji-smile-upside-down:before{content:""}.bi-emoji-smile:before{content:""}.bi-emoji-sunglasses-fill:before{content:""}.bi-emoji-sunglasses:before{content:""}.bi-emoji-wink-fill:before{content:""}.bi-emoji-wink:before{content:""}.bi-envelope-fill:before{content:""}.bi-envelope-open-fill:before{content:""}.bi-envelope-open:before{content:""}.bi-envelope:before{content:""}.bi-eraser-fill:before{content:""}.bi-eraser:before{content:""}.bi-exclamation-circle-fill:before{content:""}.bi-exclamation-circle:before{content:""}.bi-exclamation-diamond-fill:before{content:""}.bi-exclamation-diamond:before{content:""}.bi-exclamation-octagon-fill:before{content:""}.bi-exclamation-octagon:before{content:""}.bi-exclamation-square-fill:before{content:""}.bi-exclamation-square:before{content:""}.bi-exclamation-triangle-fill:before{content:""}.bi-exclamation-triangle:before{content:""}.bi-exclamation:before{content:""}.bi-exclude:before{content:""}.bi-eye-fill:before{content:""}.bi-eye-slash-fill:before{content:""}.bi-eye-slash:before{content:""}.bi-eye:before{content:""}.bi-eyedropper:before{content:""}.bi-eyeglasses:before{content:""}.bi-facebook:before{content:""}.bi-file-arrow-down-fill:before{content:""}.bi-file-arrow-down:before{content:""}.bi-file-arrow-up-fill:before{content:""}.bi-file-arrow-up:before{content:""}.bi-file-bar-graph-fill:before{content:""}.bi-file-bar-graph:before{content:""}.bi-file-binary-fill:before{content:""}.bi-file-binary:before{content:""}.bi-file-break-fill:before{content:""}.bi-file-break:before{content:""}.bi-file-check-fill:before{content:""}.bi-file-check:before{content:""}.bi-file-code-fill:before{content:""}.bi-file-code:before{content:""}.bi-file-diff-fill:before{content:""}.bi-file-diff:before{content:""}.bi-file-earmark-arrow-down-fill:before{content:""}.bi-file-earmark-arrow-down:before{content:""}.bi-file-earmark-arrow-up-fill:before{content:""}.bi-file-earmark-arrow-up:before{content:""}.bi-file-earmark-bar-graph-fill:before{content:""}.bi-file-earmark-bar-graph:before{content:""}.bi-file-earmark-binary-fill:before{content:""}.bi-file-earmark-binary:before{content:""}.bi-file-earmark-break-fill:before{content:""}.bi-file-earmark-break:before{content:""}.bi-file-earmark-check-fill:before{content:""}.bi-file-earmark-check:before{content:""}.bi-file-earmark-code-fill:before{content:""}.bi-file-earmark-code:before{content:""}.bi-file-earmark-diff-fill:before{content:""}.bi-file-earmark-diff:before{content:""}.bi-file-earmark-easel-fill:before{content:""}.bi-file-earmark-easel:before{content:""}.bi-file-earmark-excel-fill:before{content:""}.bi-file-earmark-excel:before{content:""}.bi-file-earmark-fill:before{content:""}.bi-file-earmark-font-fill:before{content:""}.bi-file-earmark-font:before{content:""}.bi-file-earmark-image-fill:before{content:""}.bi-file-earmark-image:before{content:""}.bi-file-earmark-lock-fill:before{content:""}.bi-file-earmark-lock:before{content:""}.bi-file-earmark-lock2-fill:before{content:""}.bi-file-earmark-lock2:before{content:""}.bi-file-earmark-medical-fill:before{content:""}.bi-file-earmark-medical:before{content:""}.bi-file-earmark-minus-fill:before{content:""}.bi-file-earmark-minus:before{content:""}.bi-file-earmark-music-fill:before{content:""}.bi-file-earmark-music:before{content:""}.bi-file-earmark-person-fill:before{content:""}.bi-file-earmark-person:before{content:""}.bi-file-earmark-play-fill:before{content:""}.bi-file-earmark-play:before{content:""}.bi-file-earmark-plus-fill:before{content:""}.bi-file-earmark-plus:before{content:""}.bi-file-earmark-post-fill:before{content:""}.bi-file-earmark-post:before{content:""}.bi-file-earmark-ppt-fill:before{content:""}.bi-file-earmark-ppt:before{content:""}.bi-file-earmark-richtext-fill:before{content:""}.bi-file-earmark-richtext:before{content:""}.bi-file-earmark-ruled-fill:before{content:""}.bi-file-earmark-ruled:before{content:""}.bi-file-earmark-slides-fill:before{content:""}.bi-file-earmark-slides:before{content:""}.bi-file-earmark-spreadsheet-fill:before{content:""}.bi-file-earmark-spreadsheet:before{content:""}.bi-file-earmark-text-fill:before{content:""}.bi-file-earmark-text:before{content:""}.bi-file-earmark-word-fill:before{content:""}.bi-file-earmark-word:before{content:""}.bi-file-earmark-x-fill:before{content:""}.bi-file-earmark-x:before{content:""}.bi-file-earmark-zip-fill:before{content:""}.bi-file-earmark-zip:before{content:""}.bi-file-earmark:before{content:""}.bi-file-easel-fill:before{content:""}.bi-file-easel:before{content:""}.bi-file-excel-fill:before{content:""}.bi-file-excel:before{content:""}.bi-file-fill:before{content:""}.bi-file-font-fill:before{content:""}.bi-file-font:before{content:""}.bi-file-image-fill:before{content:""}.bi-file-image:before{content:""}.bi-file-lock-fill:before{content:""}.bi-file-lock:before{content:""}.bi-file-lock2-fill:before{content:""}.bi-file-lock2:before{content:""}.bi-file-medical-fill:before{content:""}.bi-file-medical:before{content:""}.bi-file-minus-fill:before{content:""}.bi-file-minus:before{content:""}.bi-file-music-fill:before{content:""}.bi-file-music:before{content:""}.bi-file-person-fill:before{content:""}.bi-file-person:before{content:""}.bi-file-play-fill:before{content:""}.bi-file-play:before{content:""}.bi-file-plus-fill:before{content:""}.bi-file-plus:before{content:""}.bi-file-post-fill:before{content:""}.bi-file-post:before{content:""}.bi-file-ppt-fill:before{content:""}.bi-file-ppt:before{content:""}.bi-file-richtext-fill:before{content:""}.bi-file-richtext:before{content:""}.bi-file-ruled-fill:before{content:""}.bi-file-ruled:before{content:""}.bi-file-slides-fill:before{content:""}.bi-file-slides:before{content:""}.bi-file-spreadsheet-fill:before{content:""}.bi-file-spreadsheet:before{content:""}.bi-file-text-fill:before{content:""}.bi-file-text:before{content:""}.bi-file-word-fill:before{content:""}.bi-file-word:before{content:""}.bi-file-x-fill:before{content:""}.bi-file-x:before{content:""}.bi-file-zip-fill:before{content:""}.bi-file-zip:before{content:""}.bi-file:before{content:""}.bi-files-alt:before{content:""}.bi-files:before{content:""}.bi-film:before{content:""}.bi-filter-circle-fill:before{content:""}.bi-filter-circle:before{content:""}.bi-filter-left:before{content:""}.bi-filter-right:before{content:""}.bi-filter-square-fill:before{content:""}.bi-filter-square:before{content:""}.bi-filter:before{content:""}.bi-flag-fill:before{content:""}.bi-flag:before{content:""}.bi-flower1:before{content:""}.bi-flower2:before{content:""}.bi-flower3:before{content:""}.bi-folder-check:before{content:""}.bi-folder-fill:before{content:""}.bi-folder-minus:before{content:""}.bi-folder-plus:before{content:""}.bi-folder-symlink-fill:before{content:""}.bi-folder-symlink:before{content:""}.bi-folder-x:before{content:""}.bi-folder:before{content:""}.bi-folder2-open:before{content:""}.bi-folder2:before{content:""}.bi-fonts:before{content:""}.bi-forward-fill:before{content:""}.bi-forward:before{content:""}.bi-front:before{content:""}.bi-fullscreen-exit:before{content:""}.bi-fullscreen:before{content:""}.bi-funnel-fill:before{content:""}.bi-funnel:before{content:""}.bi-gear-fill:before{content:""}.bi-gear-wide-connected:before{content:""}.bi-gear-wide:before{content:""}.bi-gear:before{content:""}.bi-gem:before{content:""}.bi-geo-alt-fill:before{content:""}.bi-geo-alt:before{content:""}.bi-geo-fill:before{content:""}.bi-geo:before{content:""}.bi-gift-fill:before{content:""}.bi-gift:before{content:""}.bi-github:before{content:""}.bi-globe:before{content:""}.bi-globe2:before{content:""}.bi-google:before{content:""}.bi-graph-down:before{content:""}.bi-graph-up:before{content:""}.bi-grid-1x2-fill:before{content:""}.bi-grid-1x2:before{content:""}.bi-grid-3x2-gap-fill:before{content:""}.bi-grid-3x2-gap:before{content:""}.bi-grid-3x2:before{content:""}.bi-grid-3x3-gap-fill:before{content:""}.bi-grid-3x3-gap:before{content:""}.bi-grid-3x3:before{content:""}.bi-grid-fill:before{content:""}.bi-grid:before{content:""}.bi-grip-horizontal:before{content:""}.bi-grip-vertical:before{content:""}.bi-hammer:before{content:""}.bi-hand-index-fill:before{content:""}.bi-hand-index-thumb-fill:before{content:""}.bi-hand-index-thumb:before{content:""}.bi-hand-index:before{content:""}.bi-hand-thumbs-down-fill:before{content:""}.bi-hand-thumbs-down:before{content:""}.bi-hand-thumbs-up-fill:before{content:""}.bi-hand-thumbs-up:before{content:""}.bi-handbag-fill:before{content:""}.bi-handbag:before{content:""}.bi-hash:before{content:""}.bi-hdd-fill:before{content:""}.bi-hdd-network-fill:before{content:""}.bi-hdd-network:before{content:""}.bi-hdd-rack-fill:before{content:""}.bi-hdd-rack:before{content:""}.bi-hdd-stack-fill:before{content:""}.bi-hdd-stack:before{content:""}.bi-hdd:before{content:""}.bi-headphones:before{content:""}.bi-headset:before{content:""}.bi-heart-fill:before{content:""}.bi-heart-half:before{content:""}.bi-heart:before{content:""}.bi-heptagon-fill:before{content:""}.bi-heptagon-half:before{content:""}.bi-heptagon:before{content:""}.bi-hexagon-fill:before{content:""}.bi-hexagon-half:before{content:""}.bi-hexagon:before{content:""}.bi-hourglass-bottom:before{content:""}.bi-hourglass-split:before{content:""}.bi-hourglass-top:before{content:""}.bi-hourglass:before{content:""}.bi-house-door-fill:before{content:""}.bi-house-door:before{content:""}.bi-house-fill:before{content:""}.bi-house:before{content:""}.bi-hr:before{content:""}.bi-hurricane:before{content:""}.bi-image-alt:before{content:""}.bi-image-fill:before{content:""}.bi-image:before{content:""}.bi-images:before{content:""}.bi-inbox-fill:before{content:""}.bi-inbox:before{content:""}.bi-inboxes-fill:before{content:""}.bi-inboxes:before{content:""}.bi-info-circle-fill:before{content:""}.bi-info-circle:before{content:""}.bi-info-square-fill:before{content:""}.bi-info-square:before{content:""}.bi-info:before{content:""}.bi-input-cursor-text:before{content:""}.bi-input-cursor:before{content:""}.bi-instagram:before{content:""}.bi-intersect:before{content:""}.bi-journal-album:before{content:""}.bi-journal-arrow-down:before{content:""}.bi-journal-arrow-up:before{content:""}.bi-journal-bookmark-fill:before{content:""}.bi-journal-bookmark:before{content:""}.bi-journal-check:before{content:""}.bi-journal-code:before{content:""}.bi-journal-medical:before{content:""}.bi-journal-minus:before{content:""}.bi-journal-plus:before{content:""}.bi-journal-richtext:before{content:""}.bi-journal-text:before{content:""}.bi-journal-x:before{content:""}.bi-journal:before{content:""}.bi-journals:before{content:""}.bi-joystick:before{content:""}.bi-justify-left:before{content:""}.bi-justify-right:before{content:""}.bi-justify:before{content:""}.bi-kanban-fill:before{content:""}.bi-kanban:before{content:""}.bi-key-fill:before{content:""}.bi-key:before{content:""}.bi-keyboard-fill:before{content:""}.bi-keyboard:before{content:""}.bi-ladder:before{content:""}.bi-lamp-fill:before{content:""}.bi-lamp:before{content:""}.bi-laptop-fill:before{content:""}.bi-laptop:before{content:""}.bi-layer-backward:before{content:""}.bi-layer-forward:before{content:""}.bi-layers-fill:before{content:""}.bi-layers-half:before{content:""}.bi-layers:before{content:""}.bi-layout-sidebar-inset-reverse:before{content:""}.bi-layout-sidebar-inset:before{content:""}.bi-layout-sidebar-reverse:before{content:""}.bi-layout-sidebar:before{content:""}.bi-layout-split:before{content:""}.bi-layout-text-sidebar-reverse:before{content:""}.bi-layout-text-sidebar:before{content:""}.bi-layout-text-window-reverse:before{content:""}.bi-layout-text-window:before{content:""}.bi-layout-three-columns:before{content:""}.bi-layout-wtf:before{content:""}.bi-life-preserver:before{content:""}.bi-lightbulb-fill:before{content:""}.bi-lightbulb-off-fill:before{content:""}.bi-lightbulb-off:before{content:""}.bi-lightbulb:before{content:""}.bi-lightning-charge-fill:before{content:""}.bi-lightning-charge:before{content:""}.bi-lightning-fill:before{content:""}.bi-lightning:before{content:""}.bi-link-45deg:before{content:""}.bi-link:before{content:""}.bi-linkedin:before{content:""}.bi-list-check:before{content:""}.bi-list-nested:before{content:""}.bi-list-ol:before{content:""}.bi-list-stars:before{content:""}.bi-list-task:before{content:""}.bi-list-ul:before{content:""}.bi-list:before{content:""}.bi-lock-fill:before{content:""}.bi-lock:before{content:""}.bi-mailbox:before{content:""}.bi-mailbox2:before{content:""}.bi-map-fill:before{content:""}.bi-map:before{content:""}.bi-markdown-fill:before{content:""}.bi-markdown:before{content:""}.bi-mask:before{content:""}.bi-megaphone-fill:before{content:""}.bi-megaphone:before{content:""}.bi-menu-app-fill:before{content:""}.bi-menu-app:before{content:""}.bi-menu-button-fill:before{content:""}.bi-menu-button-wide-fill:before{content:""}.bi-menu-button-wide:before{content:""}.bi-menu-button:before{content:""}.bi-menu-down:before{content:""}.bi-menu-up:before{content:""}.bi-mic-fill:before{content:""}.bi-mic-mute-fill:before{content:""}.bi-mic-mute:before{content:""}.bi-mic:before{content:""}.bi-minecart-loaded:before{content:""}.bi-minecart:before{content:""}.bi-moisture:before{content:""}.bi-moon-fill:before{content:""}.bi-moon-stars-fill:before{content:""}.bi-moon-stars:before{content:""}.bi-moon:before{content:""}.bi-mouse-fill:before{content:""}.bi-mouse:before{content:""}.bi-mouse2-fill:before{content:""}.bi-mouse2:before{content:""}.bi-mouse3-fill:before{content:""}.bi-mouse3:before{content:""}.bi-music-note-beamed:before{content:""}.bi-music-note-list:before{content:""}.bi-music-note:before{content:""}.bi-music-player-fill:before{content:""}.bi-music-player:before{content:""}.bi-newspaper:before{content:""}.bi-node-minus-fill:before{content:""}.bi-node-minus:before{content:""}.bi-node-plus-fill:before{content:""}.bi-node-plus:before{content:""}.bi-nut-fill:before{content:""}.bi-nut:before{content:""}.bi-octagon-fill:before{content:""}.bi-octagon-half:before{content:""}.bi-octagon:before{content:""}.bi-option:before{content:""}.bi-outlet:before{content:""}.bi-paint-bucket:before{content:""}.bi-palette-fill:before{content:""}.bi-palette:before{content:""}.bi-palette2:before{content:""}.bi-paperclip:before{content:""}.bi-paragraph:before{content:""}.bi-patch-check-fill:before{content:""}.bi-patch-check:before{content:""}.bi-patch-exclamation-fill:before{content:""}.bi-patch-exclamation:before{content:""}.bi-patch-minus-fill:before{content:""}.bi-patch-minus:before{content:""}.bi-patch-plus-fill:before{content:""}.bi-patch-plus:before{content:""}.bi-patch-question-fill:before{content:""}.bi-patch-question:before{content:""}.bi-pause-btn-fill:before{content:""}.bi-pause-btn:before{content:""}.bi-pause-circle-fill:before{content:""}.bi-pause-circle:before{content:""}.bi-pause-fill:before{content:""}.bi-pause:before{content:""}.bi-peace-fill:before{content:""}.bi-peace:before{content:""}.bi-pen-fill:before{content:""}.bi-pen:before{content:""}.bi-pencil-fill:before{content:""}.bi-pencil-square:before{content:""}.bi-pencil:before{content:""}.bi-pentagon-fill:before{content:""}.bi-pentagon-half:before{content:""}.bi-pentagon:before{content:""}.bi-people-fill:before{content:""}.bi-people:before{content:""}.bi-percent:before{content:""}.bi-person-badge-fill:before{content:""}.bi-person-badge:before{content:""}.bi-person-bounding-box:before{content:""}.bi-person-check-fill:before{content:""}.bi-person-check:before{content:""}.bi-person-circle:before{content:""}.bi-person-dash-fill:before{content:""}.bi-person-dash:before{content:""}.bi-person-fill:before{content:""}.bi-person-lines-fill:before{content:""}.bi-person-plus-fill:before{content:""}.bi-person-plus:before{content:""}.bi-person-square:before{content:""}.bi-person-x-fill:before{content:""}.bi-person-x:before{content:""}.bi-person:before{content:""}.bi-phone-fill:before{content:""}.bi-phone-landscape-fill:before{content:""}.bi-phone-landscape:before{content:""}.bi-phone-vibrate-fill:before{content:""}.bi-phone-vibrate:before{content:""}.bi-phone:before{content:""}.bi-pie-chart-fill:before{content:""}.bi-pie-chart:before{content:""}.bi-pin-angle-fill:before{content:""}.bi-pin-angle:before{content:""}.bi-pin-fill:before{content:""}.bi-pin:before{content:""}.bi-pip-fill:before{content:""}.bi-pip:before{content:""}.bi-play-btn-fill:before{content:""}.bi-play-btn:before{content:""}.bi-play-circle-fill:before{content:""}.bi-play-circle:before{content:""}.bi-play-fill:before{content:""}.bi-play:before{content:""}.bi-plug-fill:before{content:""}.bi-plug:before{content:""}.bi-plus-circle-dotted:before{content:""}.bi-plus-circle-fill:before{content:""}.bi-plus-circle:before{content:""}.bi-plus-square-dotted:before{content:""}.bi-plus-square-fill:before{content:""}.bi-plus-square:before{content:""}.bi-plus:before{content:""}.bi-power:before{content:""}.bi-printer-fill:before{content:""}.bi-printer:before{content:""}.bi-puzzle-fill:before{content:""}.bi-puzzle:before{content:""}.bi-question-circle-fill:before{content:""}.bi-question-circle:before{content:""}.bi-question-diamond-fill:before{content:""}.bi-question-diamond:before{content:""}.bi-question-octagon-fill:before{content:""}.bi-question-octagon:before{content:""}.bi-question-square-fill:before{content:""}.bi-question-square:before{content:""}.bi-question:before{content:""}.bi-rainbow:before{content:""}.bi-receipt-cutoff:before{content:""}.bi-receipt:before{content:""}.bi-reception-0:before{content:""}.bi-reception-1:before{content:""}.bi-reception-2:before{content:""}.bi-reception-3:before{content:""}.bi-reception-4:before{content:""}.bi-record-btn-fill:before{content:""}.bi-record-btn:before{content:""}.bi-record-circle-fill:before{content:""}.bi-record-circle:before{content:""}.bi-record-fill:before{content:""}.bi-record:before{content:""}.bi-record2-fill:before{content:""}.bi-record2:before{content:""}.bi-reply-all-fill:before{content:""}.bi-reply-all:before{content:""}.bi-reply-fill:before{content:""}.bi-reply:before{content:""}.bi-rss-fill:before{content:""}.bi-rss:before{content:""}.bi-rulers:before{content:""}.bi-save-fill:before{content:""}.bi-save:before{content:""}.bi-save2-fill:before{content:""}.bi-save2:before{content:""}.bi-scissors:before{content:""}.bi-screwdriver:before{content:""}.bi-search:before{content:""}.bi-segmented-nav:before{content:""}.bi-server:before{content:""}.bi-share-fill:before{content:""}.bi-share:before{content:""}.bi-shield-check:before{content:""}.bi-shield-exclamation:before{content:""}.bi-shield-fill-check:before{content:""}.bi-shield-fill-exclamation:before{content:""}.bi-shield-fill-minus:before{content:""}.bi-shield-fill-plus:before{content:""}.bi-shield-fill-x:before{content:""}.bi-shield-fill:before{content:""}.bi-shield-lock-fill:before{content:""}.bi-shield-lock:before{content:""}.bi-shield-minus:before{content:""}.bi-shield-plus:before{content:""}.bi-shield-shaded:before{content:""}.bi-shield-slash-fill:before{content:""}.bi-shield-slash:before{content:""}.bi-shield-x:before{content:""}.bi-shield:before{content:""}.bi-shift-fill:before{content:""}.bi-shift:before{content:""}.bi-shop-window:before{content:""}.bi-shop:before{content:""}.bi-shuffle:before{content:""}.bi-signpost-2-fill:before{content:""}.bi-signpost-2:before{content:""}.bi-signpost-fill:before{content:""}.bi-signpost-split-fill:before{content:""}.bi-signpost-split:before{content:""}.bi-signpost:before{content:""}.bi-sim-fill:before{content:""}.bi-sim:before{content:""}.bi-skip-backward-btn-fill:before{content:""}.bi-skip-backward-btn:before{content:""}.bi-skip-backward-circle-fill:before{content:""}.bi-skip-backward-circle:before{content:""}.bi-skip-backward-fill:before{content:""}.bi-skip-backward:before{content:""}.bi-skip-end-btn-fill:before{content:""}.bi-skip-end-btn:before{content:""}.bi-skip-end-circle-fill:before{content:""}.bi-skip-end-circle:before{content:""}.bi-skip-end-fill:before{content:""}.bi-skip-end:before{content:""}.bi-skip-forward-btn-fill:before{content:""}.bi-skip-forward-btn:before{content:""}.bi-skip-forward-circle-fill:before{content:""}.bi-skip-forward-circle:before{content:""}.bi-skip-forward-fill:before{content:""}.bi-skip-forward:before{content:""}.bi-skip-start-btn-fill:before{content:""}.bi-skip-start-btn:before{content:""}.bi-skip-start-circle-fill:before{content:""}.bi-skip-start-circle:before{content:""}.bi-skip-start-fill:before{content:""}.bi-skip-start:before{content:""}.bi-slack:before{content:""}.bi-slash-circle-fill:before{content:""}.bi-slash-circle:before{content:""}.bi-slash-square-fill:before{content:""}.bi-slash-square:before{content:""}.bi-slash:before{content:""}.bi-sliders:before{content:""}.bi-smartwatch:before{content:""}.bi-snow:before{content:""}.bi-snow2:before{content:""}.bi-snow3:before{content:""}.bi-sort-alpha-down-alt:before{content:""}.bi-sort-alpha-down:before{content:""}.bi-sort-alpha-up-alt:before{content:""}.bi-sort-alpha-up:before{content:""}.bi-sort-down-alt:before{content:""}.bi-sort-down:before{content:""}.bi-sort-numeric-down-alt:before{content:""}.bi-sort-numeric-down:before{content:""}.bi-sort-numeric-up-alt:before{content:""}.bi-sort-numeric-up:before{content:""}.bi-sort-up-alt:before{content:""}.bi-sort-up:before{content:""}.bi-soundwave:before{content:""}.bi-speaker-fill:before{content:""}.bi-speaker:before{content:""}.bi-speedometer:before{content:""}.bi-speedometer2:before{content:""}.bi-spellcheck:before{content:""}.bi-square-fill:before{content:""}.bi-square-half:before{content:""}.bi-square:before{content:""}.bi-stack:before{content:""}.bi-star-fill:before{content:""}.bi-star-half:before{content:""}.bi-star:before{content:""}.bi-stars:before{content:""}.bi-stickies-fill:before{content:""}.bi-stickies:before{content:""}.bi-sticky-fill:before{content:""}.bi-sticky:before{content:""}.bi-stop-btn-fill:before{content:""}.bi-stop-btn:before{content:""}.bi-stop-circle-fill:before{content:""}.bi-stop-circle:before{content:""}.bi-stop-fill:before{content:""}.bi-stop:before{content:""}.bi-stoplights-fill:before{content:""}.bi-stoplights:before{content:""}.bi-stopwatch-fill:before{content:""}.bi-stopwatch:before{content:""}.bi-subtract:before{content:""}.bi-suit-club-fill:before{content:""}.bi-suit-club:before{content:""}.bi-suit-diamond-fill:before{content:""}.bi-suit-diamond:before{content:""}.bi-suit-heart-fill:before{content:""}.bi-suit-heart:before{content:""}.bi-suit-spade-fill:before{content:""}.bi-suit-spade:before{content:""}.bi-sun-fill:before{content:""}.bi-sun:before{content:""}.bi-sunglasses:before{content:""}.bi-sunrise-fill:before{content:""}.bi-sunrise:before{content:""}.bi-sunset-fill:before{content:""}.bi-sunset:before{content:""}.bi-symmetry-horizontal:before{content:""}.bi-symmetry-vertical:before{content:""}.bi-table:before{content:""}.bi-tablet-fill:before{content:""}.bi-tablet-landscape-fill:before{content:""}.bi-tablet-landscape:before{content:""}.bi-tablet:before{content:""}.bi-tag-fill:before{content:""}.bi-tag:before{content:""}.bi-tags-fill:before{content:""}.bi-tags:before{content:""}.bi-telegram:before{content:""}.bi-telephone-fill:before{content:""}.bi-telephone-forward-fill:before{content:""}.bi-telephone-forward:before{content:""}.bi-telephone-inbound-fill:before{content:""}.bi-telephone-inbound:before{content:""}.bi-telephone-minus-fill:before{content:""}.bi-telephone-minus:before{content:""}.bi-telephone-outbound-fill:before{content:""}.bi-telephone-outbound:before{content:""}.bi-telephone-plus-fill:before{content:""}.bi-telephone-plus:before{content:""}.bi-telephone-x-fill:before{content:""}.bi-telephone-x:before{content:""}.bi-telephone:before{content:""}.bi-terminal-fill:before{content:""}.bi-terminal:before{content:""}.bi-text-center:before{content:""}.bi-text-indent-left:before{content:""}.bi-text-indent-right:before{content:""}.bi-text-left:before{content:""}.bi-text-paragraph:before{content:""}.bi-text-right:before{content:""}.bi-textarea-resize:before{content:""}.bi-textarea-t:before{content:""}.bi-textarea:before{content:""}.bi-thermometer-half:before{content:""}.bi-thermometer-high:before{content:""}.bi-thermometer-low:before{content:""}.bi-thermometer-snow:before{content:""}.bi-thermometer-sun:before{content:""}.bi-thermometer:before{content:""}.bi-three-dots-vertical:before{content:""}.bi-three-dots:before{content:""}.bi-toggle-off:before{content:""}.bi-toggle-on:before{content:""}.bi-toggle2-off:before{content:""}.bi-toggle2-on:before{content:""}.bi-toggles:before{content:""}.bi-toggles2:before{content:""}.bi-tools:before{content:""}.bi-tornado:before{content:""}.bi-trash-fill:before{content:""}.bi-trash:before{content:""}.bi-trash2-fill:before{content:""}.bi-trash2:before{content:""}.bi-tree-fill:before{content:""}.bi-tree:before{content:""}.bi-triangle-fill:before{content:""}.bi-triangle-half:before{content:""}.bi-triangle:before{content:""}.bi-trophy-fill:before{content:""}.bi-trophy:before{content:""}.bi-tropical-storm:before{content:""}.bi-truck-flatbed:before{content:""}.bi-truck:before{content:""}.bi-tsunami:before{content:""}.bi-tv-fill:before{content:""}.bi-tv:before{content:""}.bi-twitch:before{content:""}.bi-twitter:before{content:""}.bi-type-bold:before{content:""}.bi-type-h1:before{content:""}.bi-type-h2:before{content:""}.bi-type-h3:before{content:""}.bi-type-italic:before{content:""}.bi-type-strikethrough:before{content:""}.bi-type-underline:before{content:""}.bi-type:before{content:""}.bi-ui-checks-grid:before{content:""}.bi-ui-checks:before{content:""}.bi-ui-radios-grid:before{content:""}.bi-ui-radios:before{content:""}.bi-umbrella-fill:before{content:""}.bi-umbrella:before{content:""}.bi-union:before{content:""}.bi-unlock-fill:before{content:""}.bi-unlock:before{content:""}.bi-upc-scan:before{content:""}.bi-upc:before{content:""}.bi-upload:before{content:""}.bi-vector-pen:before{content:""}.bi-view-list:before{content:""}.bi-view-stacked:before{content:""}.bi-vinyl-fill:before{content:""}.bi-vinyl:before{content:""}.bi-voicemail:before{content:""}.bi-volume-down-fill:before{content:""}.bi-volume-down:before{content:""}.bi-volume-mute-fill:before{content:""}.bi-volume-mute:before{content:""}.bi-volume-off-fill:before{content:""}.bi-volume-off:before{content:""}.bi-volume-up-fill:before{content:""}.bi-volume-up:before{content:""}.bi-vr:before{content:""}.bi-wallet-fill:before{content:""}.bi-wallet:before{content:""}.bi-wallet2:before{content:""}.bi-watch:before{content:""}.bi-water:before{content:""}.bi-whatsapp:before{content:""}.bi-wifi-1:before{content:""}.bi-wifi-2:before{content:""}.bi-wifi-off:before{content:""}.bi-wifi:before{content:""}.bi-wind:before{content:""}.bi-window-dock:before{content:""}.bi-window-sidebar:before{content:""}.bi-window:before{content:""}.bi-wrench:before{content:""}.bi-x-circle-fill:before{content:""}.bi-x-circle:before{content:""}.bi-x-diamond-fill:before{content:""}.bi-x-diamond:before{content:""}.bi-x-octagon-fill:before{content:""}.bi-x-octagon:before{content:""}.bi-x-square-fill:before{content:""}.bi-x-square:before{content:""}.bi-x:before{content:""}.bi-youtube:before{content:""}.bi-zoom-in:before{content:""}.bi-zoom-out:before{content:""}.bi-bank:before{content:""}.bi-bank2:before{content:""}.bi-bell-slash-fill:before{content:""}.bi-bell-slash:before{content:""}.bi-cash-coin:before{content:""}.bi-check-lg:before{content:""}.bi-coin:before{content:""}.bi-currency-bitcoin:before{content:""}.bi-currency-dollar:before{content:""}.bi-currency-euro:before{content:""}.bi-currency-exchange:before{content:""}.bi-currency-pound:before{content:""}.bi-currency-yen:before{content:""}.bi-dash-lg:before{content:""}.bi-exclamation-lg:before{content:""}.bi-file-earmark-pdf-fill:before{content:""}.bi-file-earmark-pdf:before{content:""}.bi-file-pdf-fill:before{content:""}.bi-file-pdf:before{content:""}.bi-gender-ambiguous:before{content:""}.bi-gender-female:before{content:""}.bi-gender-male:before{content:""}.bi-gender-trans:before{content:""}.bi-headset-vr:before{content:""}.bi-info-lg:before{content:""}.bi-mastodon:before{content:""}.bi-messenger:before{content:""}.bi-piggy-bank-fill:before{content:""}.bi-piggy-bank:before{content:""}.bi-pin-map-fill:before{content:""}.bi-pin-map:before{content:""}.bi-plus-lg:before{content:""}.bi-question-lg:before{content:""}.bi-recycle:before{content:""}.bi-reddit:before{content:""}.bi-safe-fill:before{content:""}.bi-safe2-fill:before{content:""}.bi-safe2:before{content:""}.bi-sd-card-fill:before{content:""}.bi-sd-card:before{content:""}.bi-skype:before{content:""}.bi-slash-lg:before{content:""}.bi-translate:before{content:""}.bi-x-lg:before{content:""}.bi-safe:before{content:""}.bi-apple:before{content:""}.bi-microsoft:before{content:""}.bi-windows:before{content:""}.bi-behance:before{content:""}.bi-dribbble:before{content:""}.bi-line:before{content:""}.bi-medium:before{content:""}.bi-paypal:before{content:""}.bi-pinterest:before{content:""}.bi-signal:before{content:""}.bi-snapchat:before{content:""}.bi-spotify:before{content:""}.bi-stack-overflow:before{content:""}.bi-strava:before{content:""}.bi-wordpress:before{content:""}.bi-vimeo:before{content:""}.bi-activity:before{content:""}.bi-easel2-fill:before{content:""}.bi-easel2:before{content:""}.bi-easel3-fill:before{content:""}.bi-easel3:before{content:""}.bi-fan:before{content:""}.bi-fingerprint:before{content:""}.bi-graph-down-arrow:before{content:""}.bi-graph-up-arrow:before{content:""}.bi-hypnotize:before{content:""}.bi-magic:before{content:""}.bi-person-rolodex:before{content:""}.bi-person-video:before{content:""}.bi-person-video2:before{content:""}.bi-person-video3:before{content:""}.bi-person-workspace:before{content:""}.bi-radioactive:before{content:""}.bi-webcam-fill:before{content:""}.bi-webcam:before{content:""}.bi-yin-yang:before{content:""}.bi-bandaid-fill:before{content:""}.bi-bandaid:before{content:""}.bi-bluetooth:before{content:""}.bi-body-text:before{content:""}.bi-boombox:before{content:""}.bi-boxes:before{content:""}.bi-dpad-fill:before{content:""}.bi-dpad:before{content:""}.bi-ear-fill:before{content:""}.bi-ear:before{content:""}.bi-envelope-check-fill:before{content:""}.bi-envelope-check:before{content:""}.bi-envelope-dash-fill:before{content:""}.bi-envelope-dash:before{content:""}.bi-envelope-exclamation-fill:before{content:""}.bi-envelope-exclamation:before{content:""}.bi-envelope-plus-fill:before{content:""}.bi-envelope-plus:before{content:""}.bi-envelope-slash-fill:before{content:""}.bi-envelope-slash:before{content:""}.bi-envelope-x-fill:before{content:""}.bi-envelope-x:before{content:""}.bi-explicit-fill:before{content:""}.bi-explicit:before{content:""}.bi-git:before{content:""}.bi-infinity:before{content:""}.bi-list-columns-reverse:before{content:""}.bi-list-columns:before{content:""}.bi-meta:before{content:""}.bi-nintendo-switch:before{content:""}.bi-pc-display-horizontal:before{content:""}.bi-pc-display:before{content:""}.bi-pc-horizontal:before{content:""}.bi-pc:before{content:""}.bi-playstation:before{content:""}.bi-plus-slash-minus:before{content:""}.bi-projector-fill:before{content:""}.bi-projector:before{content:""}.bi-qr-code-scan:before{content:""}.bi-qr-code:before{content:""}.bi-quora:before{content:""}.bi-quote:before{content:""}.bi-robot:before{content:""}.bi-send-check-fill:before{content:""}.bi-send-check:before{content:""}.bi-send-dash-fill:before{content:""}.bi-send-dash:before{content:""}.bi-send-exclamation-fill:before{content:""}.bi-send-exclamation:before{content:""}.bi-send-fill:before{content:""}.bi-send-plus-fill:before{content:""}.bi-send-plus:before{content:""}.bi-send-slash-fill:before{content:""}.bi-send-slash:before{content:""}.bi-send-x-fill:before{content:""}.bi-send-x:before{content:""}.bi-send:before{content:""}.bi-steam:before{content:""}.bi-terminal-dash:before{content:""}.bi-terminal-plus:before{content:""}.bi-terminal-split:before{content:""}.bi-ticket-detailed-fill:before{content:""}.bi-ticket-detailed:before{content:""}.bi-ticket-fill:before{content:""}.bi-ticket-perforated-fill:before{content:""}.bi-ticket-perforated:before{content:""}.bi-ticket:before{content:""}.bi-tiktok:before{content:""}.bi-window-dash:before{content:""}.bi-window-desktop:before{content:""}.bi-window-fullscreen:before{content:""}.bi-window-plus:before{content:""}.bi-window-split:before{content:""}.bi-window-stack:before{content:""}.bi-window-x:before{content:""}.bi-xbox:before{content:""}.bi-ethernet:before{content:""}.bi-hdmi-fill:before{content:""}.bi-hdmi:before{content:""}.bi-usb-c-fill:before{content:""}.bi-usb-c:before{content:""}.bi-usb-fill:before{content:""}.bi-usb-plug-fill:before{content:""}.bi-usb-plug:before{content:""}.bi-usb-symbol:before{content:""}.bi-usb:before{content:""}.bi-boombox-fill:before{content:""}.bi-displayport:before{content:""}.bi-gpu-card:before{content:""}.bi-memory:before{content:""}.bi-modem-fill:before{content:""}.bi-modem:before{content:""}.bi-motherboard-fill:before{content:""}.bi-motherboard:before{content:""}.bi-optical-audio-fill:before{content:""}.bi-optical-audio:before{content:""}.bi-pci-card:before{content:""}.bi-router-fill:before{content:""}.bi-router:before{content:""}.bi-thunderbolt-fill:before{content:""}.bi-thunderbolt:before{content:""}.bi-usb-drive-fill:before{content:""}.bi-usb-drive:before{content:""}.bi-usb-micro-fill:before{content:""}.bi-usb-micro:before{content:""}.bi-usb-mini-fill:before{content:""}.bi-usb-mini:before{content:""}.bi-cloud-haze2:before{content:""}.bi-device-hdd-fill:before{content:""}.bi-device-hdd:before{content:""}.bi-device-ssd-fill:before{content:""}.bi-device-ssd:before{content:""}.bi-displayport-fill:before{content:""}.bi-mortarboard-fill:before{content:""}.bi-mortarboard:before{content:""}.bi-terminal-x:before{content:""}.bi-arrow-through-heart-fill:before{content:""}.bi-arrow-through-heart:before{content:""}.bi-badge-sd-fill:before{content:""}.bi-badge-sd:before{content:""}.bi-bag-heart-fill:before{content:""}.bi-bag-heart:before{content:""}.bi-balloon-fill:before{content:""}.bi-balloon-heart-fill:before{content:""}.bi-balloon-heart:before{content:""}.bi-balloon:before{content:""}.bi-box2-fill:before{content:""}.bi-box2-heart-fill:before{content:""}.bi-box2-heart:before{content:""}.bi-box2:before{content:""}.bi-braces-asterisk:before{content:""}.bi-calendar-heart-fill:before{content:""}.bi-calendar-heart:before{content:""}.bi-calendar2-heart-fill:before{content:""}.bi-calendar2-heart:before{content:""}.bi-chat-heart-fill:before{content:""}.bi-chat-heart:before{content:""}.bi-chat-left-heart-fill:before{content:""}.bi-chat-left-heart:before{content:""}.bi-chat-right-heart-fill:before{content:""}.bi-chat-right-heart:before{content:""}.bi-chat-square-heart-fill:before{content:""}.bi-chat-square-heart:before{content:""}.bi-clipboard-check-fill:before{content:""}.bi-clipboard-data-fill:before{content:""}.bi-clipboard-fill:before{content:""}.bi-clipboard-heart-fill:before{content:""}.bi-clipboard-heart:before{content:""}.bi-clipboard-minus-fill:before{content:""}.bi-clipboard-plus-fill:before{content:""}.bi-clipboard-pulse:before{content:""}.bi-clipboard-x-fill:before{content:""}.bi-clipboard2-check-fill:before{content:""}.bi-clipboard2-check:before{content:""}.bi-clipboard2-data-fill:before{content:""}.bi-clipboard2-data:before{content:""}.bi-clipboard2-fill:before{content:""}.bi-clipboard2-heart-fill:before{content:""}.bi-clipboard2-heart:before{content:""}.bi-clipboard2-minus-fill:before{content:""}.bi-clipboard2-minus:before{content:""}.bi-clipboard2-plus-fill:before{content:""}.bi-clipboard2-plus:before{content:""}.bi-clipboard2-pulse-fill:before{content:""}.bi-clipboard2-pulse:before{content:""}.bi-clipboard2-x-fill:before{content:""}.bi-clipboard2-x:before{content:""}.bi-clipboard2:before{content:""}.bi-emoji-kiss-fill:before{content:""}.bi-emoji-kiss:before{content:""}.bi-envelope-heart-fill:before{content:""}.bi-envelope-heart:before{content:""}.bi-envelope-open-heart-fill:before{content:""}.bi-envelope-open-heart:before{content:""}.bi-envelope-paper-fill:before{content:""}.bi-envelope-paper-heart-fill:before{content:""}.bi-envelope-paper-heart:before{content:""}.bi-envelope-paper:before{content:""}.bi-filetype-aac:before{content:""}.bi-filetype-ai:before{content:""}.bi-filetype-bmp:before{content:""}.bi-filetype-cs:before{content:""}.bi-filetype-css:before{content:""}.bi-filetype-csv:before{content:""}.bi-filetype-doc:before{content:""}.bi-filetype-docx:before{content:""}.bi-filetype-exe:before{content:""}.bi-filetype-gif:before{content:""}.bi-filetype-heic:before{content:""}.bi-filetype-html:before{content:""}.bi-filetype-java:before{content:""}.bi-filetype-jpg:before{content:""}.bi-filetype-js:before{content:""}.bi-filetype-jsx:before{content:""}.bi-filetype-key:before{content:""}.bi-filetype-m4p:before{content:""}.bi-filetype-md:before{content:""}.bi-filetype-mdx:before{content:""}.bi-filetype-mov:before{content:""}.bi-filetype-mp3:before{content:""}.bi-filetype-mp4:before{content:""}.bi-filetype-otf:before{content:""}.bi-filetype-pdf:before{content:""}.bi-filetype-php:before{content:""}.bi-filetype-png:before{content:""}.bi-filetype-ppt:before{content:""}.bi-filetype-psd:before{content:""}.bi-filetype-py:before{content:""}.bi-filetype-raw:before{content:""}.bi-filetype-rb:before{content:""}.bi-filetype-sass:before{content:""}.bi-filetype-scss:before{content:""}.bi-filetype-sh:before{content:""}.bi-filetype-svg:before{content:""}.bi-filetype-tiff:before{content:""}.bi-filetype-tsx:before{content:""}.bi-filetype-ttf:before{content:""}.bi-filetype-txt:before{content:""}.bi-filetype-wav:before{content:""}.bi-filetype-woff:before{content:""}.bi-filetype-xls:before{content:""}.bi-filetype-xml:before{content:""}.bi-filetype-yml:before{content:""}.bi-heart-arrow:before{content:""}.bi-heart-pulse-fill:before{content:""}.bi-heart-pulse:before{content:""}.bi-heartbreak-fill:before{content:""}.bi-heartbreak:before{content:""}.bi-hearts:before{content:""}.bi-hospital-fill:before{content:""}.bi-hospital:before{content:""}.bi-house-heart-fill:before{content:""}.bi-house-heart:before{content:""}.bi-incognito:before{content:""}.bi-magnet-fill:before{content:""}.bi-magnet:before{content:""}.bi-person-heart:before{content:""}.bi-person-hearts:before{content:""}.bi-phone-flip:before{content:""}.bi-plugin:before{content:""}.bi-postage-fill:before{content:""}.bi-postage-heart-fill:before{content:""}.bi-postage-heart:before{content:""}.bi-postage:before{content:""}.bi-postcard-fill:before{content:""}.bi-postcard-heart-fill:before{content:""}.bi-postcard-heart:before{content:""}.bi-postcard:before{content:""}.bi-search-heart-fill:before{content:""}.bi-search-heart:before{content:""}.bi-sliders2-vertical:before{content:""}.bi-sliders2:before{content:""}.bi-trash3-fill:before{content:""}.bi-trash3:before{content:""}.bi-valentine:before{content:""}.bi-valentine2:before{content:""}.bi-wrench-adjustable-circle-fill:before{content:""}.bi-wrench-adjustable-circle:before{content:""}.bi-wrench-adjustable:before{content:""}.bi-filetype-json:before{content:""}.bi-filetype-pptx:before{content:""}.bi-filetype-xlsx:before{content:""}.bi-1-circle-fill:before{content:""}.bi-1-circle:before{content:""}.bi-1-square-fill:before{content:""}.bi-1-square:before{content:""}.bi-2-circle-fill:before{content:""}.bi-2-circle:before{content:""}.bi-2-square-fill:before{content:""}.bi-2-square:before{content:""}.bi-3-circle-fill:before{content:""}.bi-3-circle:before{content:""}.bi-3-square-fill:before{content:""}.bi-3-square:before{content:""}.bi-4-circle-fill:before{content:""}.bi-4-circle:before{content:""}.bi-4-square-fill:before{content:""}.bi-4-square:before{content:""}.bi-5-circle-fill:before{content:""}.bi-5-circle:before{content:""}.bi-5-square-fill:before{content:""}.bi-5-square:before{content:""}.bi-6-circle-fill:before{content:""}.bi-6-circle:before{content:""}.bi-6-square-fill:before{content:""}.bi-6-square:before{content:""}.bi-7-circle-fill:before{content:""}.bi-7-circle:before{content:""}.bi-7-square-fill:before{content:""}.bi-7-square:before{content:""}.bi-8-circle-fill:before{content:""}.bi-8-circle:before{content:""}.bi-8-square-fill:before{content:""}.bi-8-square:before{content:""}.bi-9-circle-fill:before{content:""}.bi-9-circle:before{content:""}.bi-9-square-fill:before{content:""}.bi-9-square:before{content:""}.bi-airplane-engines-fill:before{content:""}.bi-airplane-engines:before{content:""}.bi-airplane-fill:before{content:""}.bi-airplane:before{content:""}.bi-alexa:before{content:""}.bi-alipay:before{content:""}.bi-android:before{content:""}.bi-android2:before{content:""}.bi-box-fill:before{content:""}.bi-box-seam-fill:before{content:""}.bi-browser-chrome:before{content:""}.bi-browser-edge:before{content:""}.bi-browser-firefox:before{content:""}.bi-browser-safari:before{content:""}.bi-c-circle-fill:before{content:""}.bi-c-circle:before{content:""}.bi-c-square-fill:before{content:""}.bi-c-square:before{content:""}.bi-capsule-pill:before{content:""}.bi-capsule:before{content:""}.bi-car-front-fill:before{content:""}.bi-car-front:before{content:""}.bi-cassette-fill:before{content:""}.bi-cassette:before{content:""}.bi-cc-circle-fill:before{content:""}.bi-cc-circle:before{content:""}.bi-cc-square-fill:before{content:""}.bi-cc-square:before{content:""}.bi-cup-hot-fill:before{content:""}.bi-cup-hot:before{content:""}.bi-currency-rupee:before{content:""}.bi-dropbox:before{content:""}.bi-escape:before{content:""}.bi-fast-forward-btn-fill:before{content:""}.bi-fast-forward-btn:before{content:""}.bi-fast-forward-circle-fill:before{content:""}.bi-fast-forward-circle:before{content:""}.bi-fast-forward-fill:before{content:""}.bi-fast-forward:before{content:""}.bi-filetype-sql:before{content:""}.bi-fire:before{content:""}.bi-google-play:before{content:""}.bi-h-circle-fill:before{content:""}.bi-h-circle:before{content:""}.bi-h-square-fill:before{content:""}.bi-h-square:before{content:""}.bi-indent:before{content:""}.bi-lungs-fill:before{content:""}.bi-lungs:before{content:""}.bi-microsoft-teams:before{content:""}.bi-p-circle-fill:before{content:""}.bi-p-circle:before{content:""}.bi-p-square-fill:before{content:""}.bi-p-square:before{content:""}.bi-pass-fill:before{content:""}.bi-pass:before{content:""}.bi-prescription:before{content:""}.bi-prescription2:before{content:""}.bi-r-circle-fill:before{content:""}.bi-r-circle:before{content:""}.bi-r-square-fill:before{content:""}.bi-r-square:before{content:""}.bi-repeat-1:before{content:""}.bi-repeat:before{content:""}.bi-rewind-btn-fill:before{content:""}.bi-rewind-btn:before{content:""}.bi-rewind-circle-fill:before{content:""}.bi-rewind-circle:before{content:""}.bi-rewind-fill:before{content:""}.bi-rewind:before{content:""}.bi-train-freight-front-fill:before{content:""}.bi-train-freight-front:before{content:""}.bi-train-front-fill:before{content:""}.bi-train-front:before{content:""}.bi-train-lightrail-front-fill:before{content:""}.bi-train-lightrail-front:before{content:""}.bi-truck-front-fill:before{content:""}.bi-truck-front:before{content:""}.bi-ubuntu:before{content:""}.bi-unindent:before{content:""}.bi-unity:before{content:""}.bi-universal-access-circle:before{content:""}.bi-universal-access:before{content:""}.bi-virus:before{content:""}.bi-virus2:before{content:""}.bi-wechat:before{content:""}.bi-yelp:before{content:""}.bi-sign-stop-fill:before{content:""}.bi-sign-stop-lights-fill:before{content:""}.bi-sign-stop-lights:before{content:""}.bi-sign-stop:before{content:""}.bi-sign-turn-left-fill:before{content:""}.bi-sign-turn-left:before{content:""}.bi-sign-turn-right-fill:before{content:""}.bi-sign-turn-right:before{content:""}.bi-sign-turn-slight-left-fill:before{content:""}.bi-sign-turn-slight-left:before{content:""}.bi-sign-turn-slight-right-fill:before{content:""}.bi-sign-turn-slight-right:before{content:""}.bi-sign-yield-fill:before{content:""}.bi-sign-yield:before{content:""}.bi-ev-station-fill:before{content:""}.bi-ev-station:before{content:""}.bi-fuel-pump-diesel-fill:before{content:""}.bi-fuel-pump-diesel:before{content:""}.bi-fuel-pump-fill:before{content:""}.bi-fuel-pump:before{content:""}.bi-0-circle-fill:before{content:""}.bi-0-circle:before{content:""}.bi-0-square-fill:before{content:""}.bi-0-square:before{content:""}.bi-rocket-fill:before{content:""}.bi-rocket-takeoff-fill:before{content:""}.bi-rocket-takeoff:before{content:""}.bi-rocket:before{content:""}.bi-stripe:before{content:""}.bi-subscript:before{content:""}.bi-superscript:before{content:""}.bi-trello:before{content:""}.bi-envelope-at-fill:before{content:""}.bi-envelope-at:before{content:""}.bi-regex:before{content:""}.bi-text-wrap:before{content:""}.bi-sign-dead-end-fill:before{content:""}.bi-sign-dead-end:before{content:""}.bi-sign-do-not-enter-fill:before{content:""}.bi-sign-do-not-enter:before{content:""}.bi-sign-intersection-fill:before{content:""}.bi-sign-intersection-side-fill:before{content:""}.bi-sign-intersection-side:before{content:""}.bi-sign-intersection-t-fill:before{content:""}.bi-sign-intersection-t:before{content:""}.bi-sign-intersection-y-fill:before{content:""}.bi-sign-intersection-y:before{content:""}.bi-sign-intersection:before{content:""}.bi-sign-merge-left-fill:before{content:""}.bi-sign-merge-left:before{content:""}.bi-sign-merge-right-fill:before{content:""}.bi-sign-merge-right:before{content:""}.bi-sign-no-left-turn-fill:before{content:""}.bi-sign-no-left-turn:before{content:""}.bi-sign-no-parking-fill:before{content:""}.bi-sign-no-parking:before{content:""}.bi-sign-no-right-turn-fill:before{content:""}.bi-sign-no-right-turn:before{content:""}.bi-sign-railroad-fill:before{content:""}.bi-sign-railroad:before{content:""}.bi-building-add:before{content:""}.bi-building-check:before{content:""}.bi-building-dash:before{content:""}.bi-building-down:before{content:""}.bi-building-exclamation:before{content:""}.bi-building-fill-add:before{content:""}.bi-building-fill-check:before{content:""}.bi-building-fill-dash:before{content:""}.bi-building-fill-down:before{content:""}.bi-building-fill-exclamation:before{content:""}.bi-building-fill-gear:before{content:""}.bi-building-fill-lock:before{content:""}.bi-building-fill-slash:before{content:""}.bi-building-fill-up:before{content:""}.bi-building-fill-x:before{content:""}.bi-building-fill:before{content:""}.bi-building-gear:before{content:""}.bi-building-lock:before{content:""}.bi-building-slash:before{content:""}.bi-building-up:before{content:""}.bi-building-x:before{content:""}.bi-buildings-fill:before{content:""}.bi-buildings:before{content:""}.bi-bus-front-fill:before{content:""}.bi-bus-front:before{content:""}.bi-ev-front-fill:before{content:""}.bi-ev-front:before{content:""}.bi-globe-americas:before{content:""}.bi-globe-asia-australia:before{content:""}.bi-globe-central-south-asia:before{content:""}.bi-globe-europe-africa:before{content:""}.bi-house-add-fill:before{content:""}.bi-house-add:before{content:""}.bi-house-check-fill:before{content:""}.bi-house-check:before{content:""}.bi-house-dash-fill:before{content:""}.bi-house-dash:before{content:""}.bi-house-down-fill:before{content:""}.bi-house-down:before{content:""}.bi-house-exclamation-fill:before{content:""}.bi-house-exclamation:before{content:""}.bi-house-gear-fill:before{content:""}.bi-house-gear:before{content:""}.bi-house-lock-fill:before{content:""}.bi-house-lock:before{content:""}.bi-house-slash-fill:before{content:""}.bi-house-slash:before{content:""}.bi-house-up-fill:before{content:""}.bi-house-up:before{content:""}.bi-house-x-fill:before{content:""}.bi-house-x:before{content:""}.bi-person-add:before{content:""}.bi-person-down:before{content:""}.bi-person-exclamation:before{content:""}.bi-person-fill-add:before{content:""}.bi-person-fill-check:before{content:""}.bi-person-fill-dash:before{content:""}.bi-person-fill-down:before{content:""}.bi-person-fill-exclamation:before{content:""}.bi-person-fill-gear:before{content:""}.bi-person-fill-lock:before{content:""}.bi-person-fill-slash:before{content:""}.bi-person-fill-up:before{content:""}.bi-person-fill-x:before{content:""}.bi-person-gear:before{content:""}.bi-person-lock:before{content:""}.bi-person-slash:before{content:""}.bi-person-up:before{content:""}.bi-scooter:before{content:""}.bi-taxi-front-fill:before{content:""}.bi-taxi-front:before{content:""}.bi-amd:before{content:""}.bi-database-add:before{content:""}.bi-database-check:before{content:""}.bi-database-dash:before{content:""}.bi-database-down:before{content:""}.bi-database-exclamation:before{content:""}.bi-database-fill-add:before{content:""}.bi-database-fill-check:before{content:""}.bi-database-fill-dash:before{content:""}.bi-database-fill-down:before{content:""}.bi-database-fill-exclamation:before{content:""}.bi-database-fill-gear:before{content:""}.bi-database-fill-lock:before{content:""}.bi-database-fill-slash:before{content:""}.bi-database-fill-up:before{content:""}.bi-database-fill-x:before{content:""}.bi-database-fill:before{content:""}.bi-database-gear:before{content:""}.bi-database-lock:before{content:""}.bi-database-slash:before{content:""}.bi-database-up:before{content:""}.bi-database-x:before{content:""}.bi-database:before{content:""}.bi-houses-fill:before{content:""}.bi-houses:before{content:""}.bi-nvidia:before{content:""}.bi-person-vcard-fill:before{content:""}.bi-person-vcard:before{content:""}.bi-sina-weibo:before{content:""}.bi-tencent-qq:before{content:""}.bi-wikipedia:before{content:""}.bi-alphabet-uppercase:before{content:""}.bi-alphabet:before{content:""}.bi-amazon:before{content:""}.bi-arrows-collapse-vertical:before{content:""}.bi-arrows-expand-vertical:before{content:""}.bi-arrows-vertical:before{content:""}.bi-arrows:before{content:""}.bi-ban-fill:before{content:""}.bi-ban:before{content:""}.bi-bing:before{content:""}.bi-cake:before{content:""}.bi-cake2:before{content:""}.bi-cookie:before{content:""}.bi-copy:before{content:""}.bi-crosshair:before{content:""}.bi-crosshair2:before{content:""}.bi-emoji-astonished-fill:before{content:""}.bi-emoji-astonished:before{content:""}.bi-emoji-grimace-fill:before{content:""}.bi-emoji-grimace:before{content:""}.bi-emoji-grin-fill:before{content:""}.bi-emoji-grin:before{content:""}.bi-emoji-surprise-fill:before{content:""}.bi-emoji-surprise:before{content:""}.bi-emoji-tear-fill:before{content:""}.bi-emoji-tear:before{content:""}.bi-envelope-arrow-down-fill:before{content:""}.bi-envelope-arrow-down:before{content:""}.bi-envelope-arrow-up-fill:before{content:""}.bi-envelope-arrow-up:before{content:""}.bi-feather:before{content:""}.bi-feather2:before{content:""}.bi-floppy-fill:before{content:""}.bi-floppy:before{content:""}.bi-floppy2-fill:before{content:""}.bi-floppy2:before{content:""}.bi-gitlab:before{content:""}.bi-highlighter:before{content:""}.bi-marker-tip:before{content:""}.bi-nvme-fill:before{content:""}.bi-nvme:before{content:""}.bi-opencollective:before{content:""}.bi-pci-card-network:before{content:""}.bi-pci-card-sound:before{content:""}.bi-radar:before{content:""}.bi-send-arrow-down-fill:before{content:""}.bi-send-arrow-down:before{content:""}.bi-send-arrow-up-fill:before{content:""}.bi-send-arrow-up:before{content:""}.bi-sim-slash-fill:before{content:""}.bi-sim-slash:before{content:""}.bi-sourceforge:before{content:""}.bi-substack:before{content:""}.bi-threads-fill:before{content:""}.bi-threads:before{content:""}.bi-transparency:before{content:""}.bi-twitter-x:before{content:""}.bi-type-h4:before{content:""}.bi-type-h5:before{content:""}.bi-type-h6:before{content:""}.bi-backpack-fill:before{content:""}.bi-backpack:before{content:""}.bi-backpack2-fill:before{content:""}.bi-backpack2:before{content:""}.bi-backpack3-fill:before{content:""}.bi-backpack3:before{content:""}.bi-backpack4-fill:before{content:""}.bi-backpack4:before{content:""}.bi-brilliance:before{content:""}.bi-cake-fill:before{content:""}.bi-cake2-fill:before{content:""}.bi-duffle-fill:before{content:""}.bi-duffle:before{content:""}.bi-exposure:before{content:""}.bi-gender-neuter:before{content:""}.bi-highlights:before{content:""}.bi-luggage-fill:before{content:""}.bi-luggage:before{content:""}.bi-mailbox-flag:before{content:""}.bi-mailbox2-flag:before{content:""}.bi-noise-reduction:before{content:""}.bi-passport-fill:before{content:""}.bi-passport:before{content:""}.bi-person-arms-up:before{content:""}.bi-person-raised-hand:before{content:""}.bi-person-standing-dress:before{content:""}.bi-person-standing:before{content:""}.bi-person-walking:before{content:""}.bi-person-wheelchair:before{content:""}.bi-shadows:before{content:""}.bi-suitcase-fill:before{content:""}.bi-suitcase-lg-fill:before{content:""}.bi-suitcase-lg:before{content:""}.bi-suitcase:before{content:"豈"}.bi-suitcase2-fill:before{content:"更"}.bi-suitcase2:before{content:"車"}.bi-vignette:before{content:"賈"}.bi-bluesky:before{content:""}.bi-tux:before{content:"滑"}.bi-beaker-fill:before{content:"串"}.bi-beaker:before{content:"句"}.bi-flask-fill:before{content:"龜"}.bi-flask-florence-fill:before{content:"龜"}.bi-flask-florence:before{content:"契"}.bi-flask:before{content:"金"}.bi-leaf-fill:before{content:"喇"}.bi-leaf:before{content:"奈"}.bi-measuring-cup-fill:before{content:"懶"}.bi-measuring-cup:before{content:"癩"}.bi-unlock2-fill:before{content:"羅"}.bi-unlock2:before{content:"蘿"}.bi-battery-low:before{content:"螺"}.bi-anthropic:before{content:"裸"}.bi-apple-music:before{content:"邏"}.bi-claude:before{content:"樂"}.bi-openai:before{content:"洛"}.bi-perplexity:before{content:"烙"}.bi-css:before{content:"珞"}.bi-javascript:before{content:"落"}.bi-typescript:before{content:"酪"}.bi-fork-knife:before{content:"駱"}.bi-globe-americas-fill:before{content:"亂"}.bi-globe-asia-australia-fill:before{content:"卵"}.bi-globe-central-south-asia-fill:before{content:"欄"}.bi-globe-europe-africa-fill:before{content:"爛"}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;src:url(/static/client/dist/assets/PlusJakartaSans-VariableFont_wght-D_DSbd_K.ttf) format("ttf")}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:200 800;src:url(/static/client/dist/assets/PlusJakartaSans-Italic-VariableFont_wght-BdWtZZ8T.ttf) format("ttf")}*{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol}@property --brandColor1{syntax: ""; initial-value: #009dff; inherits: false;}@property --brandColor2{syntax: ""; initial-value: #F94647; inherits: false;}@property --distance1{syntax: ""; initial-value: 0%; inherits: false;}@property --degree{syntax: ""; initial-value: 234deg; inherits: false;}.btn-brand{background:linear-gradient(var(--degree),var(--brandColor1) var(--distance1),var(--brandColor2) 100%);border:0!important;transition:--brandColor1 .3s,--brandColor2 .3s!important}.btn-brand:hover{--brandColor1: rgb(0, 142, 216);--brandColor2: rgba(249, 70, 71) }::-webkit-scrollbar{display:none}.slide-right-enter-active,.slide-right-leave-active{transition:all .3s cubic-bezier(.82,.58,.17,1)}.slide-right-enter-from,.slide-right-leave-to{opacity:0}.slide-right-enter-from{transform:translate(-20px)}.slide-right-leave-to{transform:translate(20px)}.app-enter-active,.app-leave-active{transition:all .4s cubic-bezier(.82,.58,.17,1)}.app-enter-from,.app-leave-to{opacity:0;filter:blur(8px)}.app-enter-from{transform:scale(1.03)}.app-leave-to{transform:scale(.97)}.btn-outline-body{color:#000;border-color:#000!important;background-color:transparent}[data-bs-theme=dark] .btn-outline-body{color:#fff;border-color:#fff!important;background-color:transparent}.btn-body{border-color:#000!important;color:#fff!important;background-color:#000}.btn-body:hover{border-color:#373737!important;color:#fff!important;background-color:#373737!important}[data-bs-theme=dark] .btn-body{border-color:#fff!important;color:#000!important;background-color:#fff}[data-bs-theme=dark] .btn-body:hover{border-color:#e8e8e8!important;color:#000!important;background-color:#e8e8e8!important}.form-control{border-width:0}.amneziawgBg{background:#91c7c1;background:linear-gradient(90deg,#91c7c1,#6b5fa1,#e38e41)}.wireguardBg{background:#7d2020;background:linear-gradient(90deg,#7d2020,#ff3838)}.notification[data-v-3303bfcd]{width:100%;word-break:break-word}@media screen and (min-width: 576px){.notification[data-v-3303bfcd]{width:400px}}.message-move[data-v-e4fed80c],.message-enter-active[data-v-e4fed80c],.message-leave-active[data-v-e4fed80c]{transition:all .5s cubic-bezier(.82,.58,.17,1)}.message-enter-from[data-v-e4fed80c],.message-leave-to[data-v-e4fed80c]{filter:blur(2px);opacity:0}.message-enter-from[data-v-e4fed80c]{transform:translateY(-30px)}.message-leave-to[data-v-e4fed80c]{transform:translateY(30px)}.messageCentre[data-v-e4fed80c]{z-index:9999;top:1rem;right:1rem}@media screen and (max-width: 768px){.messageCentre[data-v-e4fed80c]{width:calc(100% - 2rem)}}@media screen and (max-width: 576px){#listContainer[data-v-9c24c21b]{border-radius:0!important}}.qrcodeContainer[data-v-cc8c55c7]{background-color:#00000050;-webkit-backdrop-filter:blur(8px) brightness(.8);backdrop-filter:blur(8px) brightness(.8);z-index:9999}.button-group a[data-v-5ea45ad6]:hover{background-color:#ffffff20}.dot[data-v-5ea45ad6]{width:10px;height:10px;border-radius:50px;display:inline-block;margin-left:auto!important;background-color:#6c757d}.dot.active[data-v-5ea45ad6]{background-color:#28a745!important;box-shadow:0 0 0 .2rem #28a74545}.nav-link[data-v-1e519584]{padding:1rem}@media screen and (max-width: 576px){.nav-links a span[data-v-1e519584]{display:none}} + */@font-face{font-display:block;font-family:bootstrap-icons;src:url(/static/client/dist/assets/bootstrap-icons-mSm7cUeB.woff2?e34853135f9e39acf64315236852cd5a) format("woff2"),url(/static/client/dist/assets/bootstrap-icons-BeopsB42.woff?e34853135f9e39acf64315236852cd5a) format("woff")}.bi:before,[class^=bi-]:before,[class*=" bi-"]:before{display:inline-block;font-family:bootstrap-icons!important;font-style:normal;font-weight:400!important;font-variant:normal;text-transform:none;line-height:1;vertical-align:-.125em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bi-123:before{content:""}.bi-alarm-fill:before{content:""}.bi-alarm:before{content:""}.bi-align-bottom:before{content:""}.bi-align-center:before{content:""}.bi-align-end:before{content:""}.bi-align-middle:before{content:""}.bi-align-start:before{content:""}.bi-align-top:before{content:""}.bi-alt:before{content:""}.bi-app-indicator:before{content:""}.bi-app:before{content:""}.bi-archive-fill:before{content:""}.bi-archive:before{content:""}.bi-arrow-90deg-down:before{content:""}.bi-arrow-90deg-left:before{content:""}.bi-arrow-90deg-right:before{content:""}.bi-arrow-90deg-up:before{content:""}.bi-arrow-bar-down:before{content:""}.bi-arrow-bar-left:before{content:""}.bi-arrow-bar-right:before{content:""}.bi-arrow-bar-up:before{content:""}.bi-arrow-clockwise:before{content:""}.bi-arrow-counterclockwise:before{content:""}.bi-arrow-down-circle-fill:before{content:""}.bi-arrow-down-circle:before{content:""}.bi-arrow-down-left-circle-fill:before{content:""}.bi-arrow-down-left-circle:before{content:""}.bi-arrow-down-left-square-fill:before{content:""}.bi-arrow-down-left-square:before{content:""}.bi-arrow-down-left:before{content:""}.bi-arrow-down-right-circle-fill:before{content:""}.bi-arrow-down-right-circle:before{content:""}.bi-arrow-down-right-square-fill:before{content:""}.bi-arrow-down-right-square:before{content:""}.bi-arrow-down-right:before{content:""}.bi-arrow-down-short:before{content:""}.bi-arrow-down-square-fill:before{content:""}.bi-arrow-down-square:before{content:""}.bi-arrow-down-up:before{content:""}.bi-arrow-down:before{content:""}.bi-arrow-left-circle-fill:before{content:""}.bi-arrow-left-circle:before{content:""}.bi-arrow-left-right:before{content:""}.bi-arrow-left-short:before{content:""}.bi-arrow-left-square-fill:before{content:""}.bi-arrow-left-square:before{content:""}.bi-arrow-left:before{content:""}.bi-arrow-repeat:before{content:""}.bi-arrow-return-left:before{content:""}.bi-arrow-return-right:before{content:""}.bi-arrow-right-circle-fill:before{content:""}.bi-arrow-right-circle:before{content:""}.bi-arrow-right-short:before{content:""}.bi-arrow-right-square-fill:before{content:""}.bi-arrow-right-square:before{content:""}.bi-arrow-right:before{content:""}.bi-arrow-up-circle-fill:before{content:""}.bi-arrow-up-circle:before{content:""}.bi-arrow-up-left-circle-fill:before{content:""}.bi-arrow-up-left-circle:before{content:""}.bi-arrow-up-left-square-fill:before{content:""}.bi-arrow-up-left-square:before{content:""}.bi-arrow-up-left:before{content:""}.bi-arrow-up-right-circle-fill:before{content:""}.bi-arrow-up-right-circle:before{content:""}.bi-arrow-up-right-square-fill:before{content:""}.bi-arrow-up-right-square:before{content:""}.bi-arrow-up-right:before{content:""}.bi-arrow-up-short:before{content:""}.bi-arrow-up-square-fill:before{content:""}.bi-arrow-up-square:before{content:""}.bi-arrow-up:before{content:""}.bi-arrows-angle-contract:before{content:""}.bi-arrows-angle-expand:before{content:""}.bi-arrows-collapse:before{content:""}.bi-arrows-expand:before{content:""}.bi-arrows-fullscreen:before{content:""}.bi-arrows-move:before{content:""}.bi-aspect-ratio-fill:before{content:""}.bi-aspect-ratio:before{content:""}.bi-asterisk:before{content:""}.bi-at:before{content:""}.bi-award-fill:before{content:""}.bi-award:before{content:""}.bi-back:before{content:""}.bi-backspace-fill:before{content:""}.bi-backspace-reverse-fill:before{content:""}.bi-backspace-reverse:before{content:""}.bi-backspace:before{content:""}.bi-badge-3d-fill:before{content:""}.bi-badge-3d:before{content:""}.bi-badge-4k-fill:before{content:""}.bi-badge-4k:before{content:""}.bi-badge-8k-fill:before{content:""}.bi-badge-8k:before{content:""}.bi-badge-ad-fill:before{content:""}.bi-badge-ad:before{content:""}.bi-badge-ar-fill:before{content:""}.bi-badge-ar:before{content:""}.bi-badge-cc-fill:before{content:""}.bi-badge-cc:before{content:""}.bi-badge-hd-fill:before{content:""}.bi-badge-hd:before{content:""}.bi-badge-tm-fill:before{content:""}.bi-badge-tm:before{content:""}.bi-badge-vo-fill:before{content:""}.bi-badge-vo:before{content:""}.bi-badge-vr-fill:before{content:""}.bi-badge-vr:before{content:""}.bi-badge-wc-fill:before{content:""}.bi-badge-wc:before{content:""}.bi-bag-check-fill:before{content:""}.bi-bag-check:before{content:""}.bi-bag-dash-fill:before{content:""}.bi-bag-dash:before{content:""}.bi-bag-fill:before{content:""}.bi-bag-plus-fill:before{content:""}.bi-bag-plus:before{content:""}.bi-bag-x-fill:before{content:""}.bi-bag-x:before{content:""}.bi-bag:before{content:""}.bi-bar-chart-fill:before{content:""}.bi-bar-chart-line-fill:before{content:""}.bi-bar-chart-line:before{content:""}.bi-bar-chart-steps:before{content:""}.bi-bar-chart:before{content:""}.bi-basket-fill:before{content:""}.bi-basket:before{content:""}.bi-basket2-fill:before{content:""}.bi-basket2:before{content:""}.bi-basket3-fill:before{content:""}.bi-basket3:before{content:""}.bi-battery-charging:before{content:""}.bi-battery-full:before{content:""}.bi-battery-half:before{content:""}.bi-battery:before{content:""}.bi-bell-fill:before{content:""}.bi-bell:before{content:""}.bi-bezier:before{content:""}.bi-bezier2:before{content:""}.bi-bicycle:before{content:""}.bi-binoculars-fill:before{content:""}.bi-binoculars:before{content:""}.bi-blockquote-left:before{content:""}.bi-blockquote-right:before{content:""}.bi-book-fill:before{content:""}.bi-book-half:before{content:""}.bi-book:before{content:""}.bi-bookmark-check-fill:before{content:""}.bi-bookmark-check:before{content:""}.bi-bookmark-dash-fill:before{content:""}.bi-bookmark-dash:before{content:""}.bi-bookmark-fill:before{content:""}.bi-bookmark-heart-fill:before{content:""}.bi-bookmark-heart:before{content:""}.bi-bookmark-plus-fill:before{content:""}.bi-bookmark-plus:before{content:""}.bi-bookmark-star-fill:before{content:""}.bi-bookmark-star:before{content:""}.bi-bookmark-x-fill:before{content:""}.bi-bookmark-x:before{content:""}.bi-bookmark:before{content:""}.bi-bookmarks-fill:before{content:""}.bi-bookmarks:before{content:""}.bi-bookshelf:before{content:""}.bi-bootstrap-fill:before{content:""}.bi-bootstrap-reboot:before{content:""}.bi-bootstrap:before{content:""}.bi-border-all:before{content:""}.bi-border-bottom:before{content:""}.bi-border-center:before{content:""}.bi-border-inner:before{content:""}.bi-border-left:before{content:""}.bi-border-middle:before{content:""}.bi-border-outer:before{content:""}.bi-border-right:before{content:""}.bi-border-style:before{content:""}.bi-border-top:before{content:""}.bi-border-width:before{content:""}.bi-border:before{content:""}.bi-bounding-box-circles:before{content:""}.bi-bounding-box:before{content:""}.bi-box-arrow-down-left:before{content:""}.bi-box-arrow-down-right:before{content:""}.bi-box-arrow-down:before{content:""}.bi-box-arrow-in-down-left:before{content:""}.bi-box-arrow-in-down-right:before{content:""}.bi-box-arrow-in-down:before{content:""}.bi-box-arrow-in-left:before{content:""}.bi-box-arrow-in-right:before{content:""}.bi-box-arrow-in-up-left:before{content:""}.bi-box-arrow-in-up-right:before{content:""}.bi-box-arrow-in-up:before{content:""}.bi-box-arrow-left:before{content:""}.bi-box-arrow-right:before{content:""}.bi-box-arrow-up-left:before{content:""}.bi-box-arrow-up-right:before{content:""}.bi-box-arrow-up:before{content:""}.bi-box-seam:before{content:""}.bi-box:before{content:""}.bi-braces:before{content:""}.bi-bricks:before{content:""}.bi-briefcase-fill:before{content:""}.bi-briefcase:before{content:""}.bi-brightness-alt-high-fill:before{content:""}.bi-brightness-alt-high:before{content:""}.bi-brightness-alt-low-fill:before{content:""}.bi-brightness-alt-low:before{content:""}.bi-brightness-high-fill:before{content:""}.bi-brightness-high:before{content:""}.bi-brightness-low-fill:before{content:""}.bi-brightness-low:before{content:""}.bi-broadcast-pin:before{content:""}.bi-broadcast:before{content:""}.bi-brush-fill:before{content:""}.bi-brush:before{content:""}.bi-bucket-fill:before{content:""}.bi-bucket:before{content:""}.bi-bug-fill:before{content:""}.bi-bug:before{content:""}.bi-building:before{content:""}.bi-bullseye:before{content:""}.bi-calculator-fill:before{content:""}.bi-calculator:before{content:""}.bi-calendar-check-fill:before{content:""}.bi-calendar-check:before{content:""}.bi-calendar-date-fill:before{content:""}.bi-calendar-date:before{content:""}.bi-calendar-day-fill:before{content:""}.bi-calendar-day:before{content:""}.bi-calendar-event-fill:before{content:""}.bi-calendar-event:before{content:""}.bi-calendar-fill:before{content:""}.bi-calendar-minus-fill:before{content:""}.bi-calendar-minus:before{content:""}.bi-calendar-month-fill:before{content:""}.bi-calendar-month:before{content:""}.bi-calendar-plus-fill:before{content:""}.bi-calendar-plus:before{content:""}.bi-calendar-range-fill:before{content:""}.bi-calendar-range:before{content:""}.bi-calendar-week-fill:before{content:""}.bi-calendar-week:before{content:""}.bi-calendar-x-fill:before{content:""}.bi-calendar-x:before{content:""}.bi-calendar:before{content:""}.bi-calendar2-check-fill:before{content:""}.bi-calendar2-check:before{content:""}.bi-calendar2-date-fill:before{content:""}.bi-calendar2-date:before{content:""}.bi-calendar2-day-fill:before{content:""}.bi-calendar2-day:before{content:""}.bi-calendar2-event-fill:before{content:""}.bi-calendar2-event:before{content:""}.bi-calendar2-fill:before{content:""}.bi-calendar2-minus-fill:before{content:""}.bi-calendar2-minus:before{content:""}.bi-calendar2-month-fill:before{content:""}.bi-calendar2-month:before{content:""}.bi-calendar2-plus-fill:before{content:""}.bi-calendar2-plus:before{content:""}.bi-calendar2-range-fill:before{content:""}.bi-calendar2-range:before{content:""}.bi-calendar2-week-fill:before{content:""}.bi-calendar2-week:before{content:""}.bi-calendar2-x-fill:before{content:""}.bi-calendar2-x:before{content:""}.bi-calendar2:before{content:""}.bi-calendar3-event-fill:before{content:""}.bi-calendar3-event:before{content:""}.bi-calendar3-fill:before{content:""}.bi-calendar3-range-fill:before{content:""}.bi-calendar3-range:before{content:""}.bi-calendar3-week-fill:before{content:""}.bi-calendar3-week:before{content:""}.bi-calendar3:before{content:""}.bi-calendar4-event:before{content:""}.bi-calendar4-range:before{content:""}.bi-calendar4-week:before{content:""}.bi-calendar4:before{content:""}.bi-camera-fill:before{content:""}.bi-camera-reels-fill:before{content:""}.bi-camera-reels:before{content:""}.bi-camera-video-fill:before{content:""}.bi-camera-video-off-fill:before{content:""}.bi-camera-video-off:before{content:""}.bi-camera-video:before{content:""}.bi-camera:before{content:""}.bi-camera2:before{content:""}.bi-capslock-fill:before{content:""}.bi-capslock:before{content:""}.bi-card-checklist:before{content:""}.bi-card-heading:before{content:""}.bi-card-image:before{content:""}.bi-card-list:before{content:""}.bi-card-text:before{content:""}.bi-caret-down-fill:before{content:""}.bi-caret-down-square-fill:before{content:""}.bi-caret-down-square:before{content:""}.bi-caret-down:before{content:""}.bi-caret-left-fill:before{content:""}.bi-caret-left-square-fill:before{content:""}.bi-caret-left-square:before{content:""}.bi-caret-left:before{content:""}.bi-caret-right-fill:before{content:""}.bi-caret-right-square-fill:before{content:""}.bi-caret-right-square:before{content:""}.bi-caret-right:before{content:""}.bi-caret-up-fill:before{content:""}.bi-caret-up-square-fill:before{content:""}.bi-caret-up-square:before{content:""}.bi-caret-up:before{content:""}.bi-cart-check-fill:before{content:""}.bi-cart-check:before{content:""}.bi-cart-dash-fill:before{content:""}.bi-cart-dash:before{content:""}.bi-cart-fill:before{content:""}.bi-cart-plus-fill:before{content:""}.bi-cart-plus:before{content:""}.bi-cart-x-fill:before{content:""}.bi-cart-x:before{content:""}.bi-cart:before{content:""}.bi-cart2:before{content:""}.bi-cart3:before{content:""}.bi-cart4:before{content:""}.bi-cash-stack:before{content:""}.bi-cash:before{content:""}.bi-cast:before{content:""}.bi-chat-dots-fill:before{content:""}.bi-chat-dots:before{content:""}.bi-chat-fill:before{content:""}.bi-chat-left-dots-fill:before{content:""}.bi-chat-left-dots:before{content:""}.bi-chat-left-fill:before{content:""}.bi-chat-left-quote-fill:before{content:""}.bi-chat-left-quote:before{content:""}.bi-chat-left-text-fill:before{content:""}.bi-chat-left-text:before{content:""}.bi-chat-left:before{content:""}.bi-chat-quote-fill:before{content:""}.bi-chat-quote:before{content:""}.bi-chat-right-dots-fill:before{content:""}.bi-chat-right-dots:before{content:""}.bi-chat-right-fill:before{content:""}.bi-chat-right-quote-fill:before{content:""}.bi-chat-right-quote:before{content:""}.bi-chat-right-text-fill:before{content:""}.bi-chat-right-text:before{content:""}.bi-chat-right:before{content:""}.bi-chat-square-dots-fill:before{content:""}.bi-chat-square-dots:before{content:""}.bi-chat-square-fill:before{content:""}.bi-chat-square-quote-fill:before{content:""}.bi-chat-square-quote:before{content:""}.bi-chat-square-text-fill:before{content:""}.bi-chat-square-text:before{content:""}.bi-chat-square:before{content:""}.bi-chat-text-fill:before{content:""}.bi-chat-text:before{content:""}.bi-chat:before{content:""}.bi-check-all:before{content:""}.bi-check-circle-fill:before{content:""}.bi-check-circle:before{content:""}.bi-check-square-fill:before{content:""}.bi-check-square:before{content:""}.bi-check:before{content:""}.bi-check2-all:before{content:""}.bi-check2-circle:before{content:""}.bi-check2-square:before{content:""}.bi-check2:before{content:""}.bi-chevron-bar-contract:before{content:""}.bi-chevron-bar-down:before{content:""}.bi-chevron-bar-expand:before{content:""}.bi-chevron-bar-left:before{content:""}.bi-chevron-bar-right:before{content:""}.bi-chevron-bar-up:before{content:""}.bi-chevron-compact-down:before{content:""}.bi-chevron-compact-left:before{content:""}.bi-chevron-compact-right:before{content:""}.bi-chevron-compact-up:before{content:""}.bi-chevron-contract:before{content:""}.bi-chevron-double-down:before{content:""}.bi-chevron-double-left:before{content:""}.bi-chevron-double-right:before{content:""}.bi-chevron-double-up:before{content:""}.bi-chevron-down:before{content:""}.bi-chevron-expand:before{content:""}.bi-chevron-left:before{content:""}.bi-chevron-right:before{content:""}.bi-chevron-up:before{content:""}.bi-circle-fill:before{content:""}.bi-circle-half:before{content:""}.bi-circle-square:before{content:""}.bi-circle:before{content:""}.bi-clipboard-check:before{content:""}.bi-clipboard-data:before{content:""}.bi-clipboard-minus:before{content:""}.bi-clipboard-plus:before{content:""}.bi-clipboard-x:before{content:""}.bi-clipboard:before{content:""}.bi-clock-fill:before{content:""}.bi-clock-history:before{content:""}.bi-clock:before{content:""}.bi-cloud-arrow-down-fill:before{content:""}.bi-cloud-arrow-down:before{content:""}.bi-cloud-arrow-up-fill:before{content:""}.bi-cloud-arrow-up:before{content:""}.bi-cloud-check-fill:before{content:""}.bi-cloud-check:before{content:""}.bi-cloud-download-fill:before{content:""}.bi-cloud-download:before{content:""}.bi-cloud-drizzle-fill:before{content:""}.bi-cloud-drizzle:before{content:""}.bi-cloud-fill:before{content:""}.bi-cloud-fog-fill:before{content:""}.bi-cloud-fog:before{content:""}.bi-cloud-fog2-fill:before{content:""}.bi-cloud-fog2:before{content:""}.bi-cloud-hail-fill:before{content:""}.bi-cloud-hail:before{content:""}.bi-cloud-haze-fill:before{content:""}.bi-cloud-haze:before{content:""}.bi-cloud-haze2-fill:before{content:""}.bi-cloud-lightning-fill:before{content:""}.bi-cloud-lightning-rain-fill:before{content:""}.bi-cloud-lightning-rain:before{content:""}.bi-cloud-lightning:before{content:""}.bi-cloud-minus-fill:before{content:""}.bi-cloud-minus:before{content:""}.bi-cloud-moon-fill:before{content:""}.bi-cloud-moon:before{content:""}.bi-cloud-plus-fill:before{content:""}.bi-cloud-plus:before{content:""}.bi-cloud-rain-fill:before{content:""}.bi-cloud-rain-heavy-fill:before{content:""}.bi-cloud-rain-heavy:before{content:""}.bi-cloud-rain:before{content:""}.bi-cloud-slash-fill:before{content:""}.bi-cloud-slash:before{content:""}.bi-cloud-sleet-fill:before{content:""}.bi-cloud-sleet:before{content:""}.bi-cloud-snow-fill:before{content:""}.bi-cloud-snow:before{content:""}.bi-cloud-sun-fill:before{content:""}.bi-cloud-sun:before{content:""}.bi-cloud-upload-fill:before{content:""}.bi-cloud-upload:before{content:""}.bi-cloud:before{content:""}.bi-clouds-fill:before{content:""}.bi-clouds:before{content:""}.bi-cloudy-fill:before{content:""}.bi-cloudy:before{content:""}.bi-code-slash:before{content:""}.bi-code-square:before{content:""}.bi-code:before{content:""}.bi-collection-fill:before{content:""}.bi-collection-play-fill:before{content:""}.bi-collection-play:before{content:""}.bi-collection:before{content:""}.bi-columns-gap:before{content:""}.bi-columns:before{content:""}.bi-command:before{content:""}.bi-compass-fill:before{content:""}.bi-compass:before{content:""}.bi-cone-striped:before{content:""}.bi-cone:before{content:""}.bi-controller:before{content:""}.bi-cpu-fill:before{content:""}.bi-cpu:before{content:""}.bi-credit-card-2-back-fill:before{content:""}.bi-credit-card-2-back:before{content:""}.bi-credit-card-2-front-fill:before{content:""}.bi-credit-card-2-front:before{content:""}.bi-credit-card-fill:before{content:""}.bi-credit-card:before{content:""}.bi-crop:before{content:""}.bi-cup-fill:before{content:""}.bi-cup-straw:before{content:""}.bi-cup:before{content:""}.bi-cursor-fill:before{content:""}.bi-cursor-text:before{content:""}.bi-cursor:before{content:""}.bi-dash-circle-dotted:before{content:""}.bi-dash-circle-fill:before{content:""}.bi-dash-circle:before{content:""}.bi-dash-square-dotted:before{content:""}.bi-dash-square-fill:before{content:""}.bi-dash-square:before{content:""}.bi-dash:before{content:""}.bi-diagram-2-fill:before{content:""}.bi-diagram-2:before{content:""}.bi-diagram-3-fill:before{content:""}.bi-diagram-3:before{content:""}.bi-diamond-fill:before{content:""}.bi-diamond-half:before{content:""}.bi-diamond:before{content:""}.bi-dice-1-fill:before{content:""}.bi-dice-1:before{content:""}.bi-dice-2-fill:before{content:""}.bi-dice-2:before{content:""}.bi-dice-3-fill:before{content:""}.bi-dice-3:before{content:""}.bi-dice-4-fill:before{content:""}.bi-dice-4:before{content:""}.bi-dice-5-fill:before{content:""}.bi-dice-5:before{content:""}.bi-dice-6-fill:before{content:""}.bi-dice-6:before{content:""}.bi-disc-fill:before{content:""}.bi-disc:before{content:""}.bi-discord:before{content:""}.bi-display-fill:before{content:""}.bi-display:before{content:""}.bi-distribute-horizontal:before{content:""}.bi-distribute-vertical:before{content:""}.bi-door-closed-fill:before{content:""}.bi-door-closed:before{content:""}.bi-door-open-fill:before{content:""}.bi-door-open:before{content:""}.bi-dot:before{content:""}.bi-download:before{content:""}.bi-droplet-fill:before{content:""}.bi-droplet-half:before{content:""}.bi-droplet:before{content:""}.bi-earbuds:before{content:""}.bi-easel-fill:before{content:""}.bi-easel:before{content:""}.bi-egg-fill:before{content:""}.bi-egg-fried:before{content:""}.bi-egg:before{content:""}.bi-eject-fill:before{content:""}.bi-eject:before{content:""}.bi-emoji-angry-fill:before{content:""}.bi-emoji-angry:before{content:""}.bi-emoji-dizzy-fill:before{content:""}.bi-emoji-dizzy:before{content:""}.bi-emoji-expressionless-fill:before{content:""}.bi-emoji-expressionless:before{content:""}.bi-emoji-frown-fill:before{content:""}.bi-emoji-frown:before{content:""}.bi-emoji-heart-eyes-fill:before{content:""}.bi-emoji-heart-eyes:before{content:""}.bi-emoji-laughing-fill:before{content:""}.bi-emoji-laughing:before{content:""}.bi-emoji-neutral-fill:before{content:""}.bi-emoji-neutral:before{content:""}.bi-emoji-smile-fill:before{content:""}.bi-emoji-smile-upside-down-fill:before{content:""}.bi-emoji-smile-upside-down:before{content:""}.bi-emoji-smile:before{content:""}.bi-emoji-sunglasses-fill:before{content:""}.bi-emoji-sunglasses:before{content:""}.bi-emoji-wink-fill:before{content:""}.bi-emoji-wink:before{content:""}.bi-envelope-fill:before{content:""}.bi-envelope-open-fill:before{content:""}.bi-envelope-open:before{content:""}.bi-envelope:before{content:""}.bi-eraser-fill:before{content:""}.bi-eraser:before{content:""}.bi-exclamation-circle-fill:before{content:""}.bi-exclamation-circle:before{content:""}.bi-exclamation-diamond-fill:before{content:""}.bi-exclamation-diamond:before{content:""}.bi-exclamation-octagon-fill:before{content:""}.bi-exclamation-octagon:before{content:""}.bi-exclamation-square-fill:before{content:""}.bi-exclamation-square:before{content:""}.bi-exclamation-triangle-fill:before{content:""}.bi-exclamation-triangle:before{content:""}.bi-exclamation:before{content:""}.bi-exclude:before{content:""}.bi-eye-fill:before{content:""}.bi-eye-slash-fill:before{content:""}.bi-eye-slash:before{content:""}.bi-eye:before{content:""}.bi-eyedropper:before{content:""}.bi-eyeglasses:before{content:""}.bi-facebook:before{content:""}.bi-file-arrow-down-fill:before{content:""}.bi-file-arrow-down:before{content:""}.bi-file-arrow-up-fill:before{content:""}.bi-file-arrow-up:before{content:""}.bi-file-bar-graph-fill:before{content:""}.bi-file-bar-graph:before{content:""}.bi-file-binary-fill:before{content:""}.bi-file-binary:before{content:""}.bi-file-break-fill:before{content:""}.bi-file-break:before{content:""}.bi-file-check-fill:before{content:""}.bi-file-check:before{content:""}.bi-file-code-fill:before{content:""}.bi-file-code:before{content:""}.bi-file-diff-fill:before{content:""}.bi-file-diff:before{content:""}.bi-file-earmark-arrow-down-fill:before{content:""}.bi-file-earmark-arrow-down:before{content:""}.bi-file-earmark-arrow-up-fill:before{content:""}.bi-file-earmark-arrow-up:before{content:""}.bi-file-earmark-bar-graph-fill:before{content:""}.bi-file-earmark-bar-graph:before{content:""}.bi-file-earmark-binary-fill:before{content:""}.bi-file-earmark-binary:before{content:""}.bi-file-earmark-break-fill:before{content:""}.bi-file-earmark-break:before{content:""}.bi-file-earmark-check-fill:before{content:""}.bi-file-earmark-check:before{content:""}.bi-file-earmark-code-fill:before{content:""}.bi-file-earmark-code:before{content:""}.bi-file-earmark-diff-fill:before{content:""}.bi-file-earmark-diff:before{content:""}.bi-file-earmark-easel-fill:before{content:""}.bi-file-earmark-easel:before{content:""}.bi-file-earmark-excel-fill:before{content:""}.bi-file-earmark-excel:before{content:""}.bi-file-earmark-fill:before{content:""}.bi-file-earmark-font-fill:before{content:""}.bi-file-earmark-font:before{content:""}.bi-file-earmark-image-fill:before{content:""}.bi-file-earmark-image:before{content:""}.bi-file-earmark-lock-fill:before{content:""}.bi-file-earmark-lock:before{content:""}.bi-file-earmark-lock2-fill:before{content:""}.bi-file-earmark-lock2:before{content:""}.bi-file-earmark-medical-fill:before{content:""}.bi-file-earmark-medical:before{content:""}.bi-file-earmark-minus-fill:before{content:""}.bi-file-earmark-minus:before{content:""}.bi-file-earmark-music-fill:before{content:""}.bi-file-earmark-music:before{content:""}.bi-file-earmark-person-fill:before{content:""}.bi-file-earmark-person:before{content:""}.bi-file-earmark-play-fill:before{content:""}.bi-file-earmark-play:before{content:""}.bi-file-earmark-plus-fill:before{content:""}.bi-file-earmark-plus:before{content:""}.bi-file-earmark-post-fill:before{content:""}.bi-file-earmark-post:before{content:""}.bi-file-earmark-ppt-fill:before{content:""}.bi-file-earmark-ppt:before{content:""}.bi-file-earmark-richtext-fill:before{content:""}.bi-file-earmark-richtext:before{content:""}.bi-file-earmark-ruled-fill:before{content:""}.bi-file-earmark-ruled:before{content:""}.bi-file-earmark-slides-fill:before{content:""}.bi-file-earmark-slides:before{content:""}.bi-file-earmark-spreadsheet-fill:before{content:""}.bi-file-earmark-spreadsheet:before{content:""}.bi-file-earmark-text-fill:before{content:""}.bi-file-earmark-text:before{content:""}.bi-file-earmark-word-fill:before{content:""}.bi-file-earmark-word:before{content:""}.bi-file-earmark-x-fill:before{content:""}.bi-file-earmark-x:before{content:""}.bi-file-earmark-zip-fill:before{content:""}.bi-file-earmark-zip:before{content:""}.bi-file-earmark:before{content:""}.bi-file-easel-fill:before{content:""}.bi-file-easel:before{content:""}.bi-file-excel-fill:before{content:""}.bi-file-excel:before{content:""}.bi-file-fill:before{content:""}.bi-file-font-fill:before{content:""}.bi-file-font:before{content:""}.bi-file-image-fill:before{content:""}.bi-file-image:before{content:""}.bi-file-lock-fill:before{content:""}.bi-file-lock:before{content:""}.bi-file-lock2-fill:before{content:""}.bi-file-lock2:before{content:""}.bi-file-medical-fill:before{content:""}.bi-file-medical:before{content:""}.bi-file-minus-fill:before{content:""}.bi-file-minus:before{content:""}.bi-file-music-fill:before{content:""}.bi-file-music:before{content:""}.bi-file-person-fill:before{content:""}.bi-file-person:before{content:""}.bi-file-play-fill:before{content:""}.bi-file-play:before{content:""}.bi-file-plus-fill:before{content:""}.bi-file-plus:before{content:""}.bi-file-post-fill:before{content:""}.bi-file-post:before{content:""}.bi-file-ppt-fill:before{content:""}.bi-file-ppt:before{content:""}.bi-file-richtext-fill:before{content:""}.bi-file-richtext:before{content:""}.bi-file-ruled-fill:before{content:""}.bi-file-ruled:before{content:""}.bi-file-slides-fill:before{content:""}.bi-file-slides:before{content:""}.bi-file-spreadsheet-fill:before{content:""}.bi-file-spreadsheet:before{content:""}.bi-file-text-fill:before{content:""}.bi-file-text:before{content:""}.bi-file-word-fill:before{content:""}.bi-file-word:before{content:""}.bi-file-x-fill:before{content:""}.bi-file-x:before{content:""}.bi-file-zip-fill:before{content:""}.bi-file-zip:before{content:""}.bi-file:before{content:""}.bi-files-alt:before{content:""}.bi-files:before{content:""}.bi-film:before{content:""}.bi-filter-circle-fill:before{content:""}.bi-filter-circle:before{content:""}.bi-filter-left:before{content:""}.bi-filter-right:before{content:""}.bi-filter-square-fill:before{content:""}.bi-filter-square:before{content:""}.bi-filter:before{content:""}.bi-flag-fill:before{content:""}.bi-flag:before{content:""}.bi-flower1:before{content:""}.bi-flower2:before{content:""}.bi-flower3:before{content:""}.bi-folder-check:before{content:""}.bi-folder-fill:before{content:""}.bi-folder-minus:before{content:""}.bi-folder-plus:before{content:""}.bi-folder-symlink-fill:before{content:""}.bi-folder-symlink:before{content:""}.bi-folder-x:before{content:""}.bi-folder:before{content:""}.bi-folder2-open:before{content:""}.bi-folder2:before{content:""}.bi-fonts:before{content:""}.bi-forward-fill:before{content:""}.bi-forward:before{content:""}.bi-front:before{content:""}.bi-fullscreen-exit:before{content:""}.bi-fullscreen:before{content:""}.bi-funnel-fill:before{content:""}.bi-funnel:before{content:""}.bi-gear-fill:before{content:""}.bi-gear-wide-connected:before{content:""}.bi-gear-wide:before{content:""}.bi-gear:before{content:""}.bi-gem:before{content:""}.bi-geo-alt-fill:before{content:""}.bi-geo-alt:before{content:""}.bi-geo-fill:before{content:""}.bi-geo:before{content:""}.bi-gift-fill:before{content:""}.bi-gift:before{content:""}.bi-github:before{content:""}.bi-globe:before{content:""}.bi-globe2:before{content:""}.bi-google:before{content:""}.bi-graph-down:before{content:""}.bi-graph-up:before{content:""}.bi-grid-1x2-fill:before{content:""}.bi-grid-1x2:before{content:""}.bi-grid-3x2-gap-fill:before{content:""}.bi-grid-3x2-gap:before{content:""}.bi-grid-3x2:before{content:""}.bi-grid-3x3-gap-fill:before{content:""}.bi-grid-3x3-gap:before{content:""}.bi-grid-3x3:before{content:""}.bi-grid-fill:before{content:""}.bi-grid:before{content:""}.bi-grip-horizontal:before{content:""}.bi-grip-vertical:before{content:""}.bi-hammer:before{content:""}.bi-hand-index-fill:before{content:""}.bi-hand-index-thumb-fill:before{content:""}.bi-hand-index-thumb:before{content:""}.bi-hand-index:before{content:""}.bi-hand-thumbs-down-fill:before{content:""}.bi-hand-thumbs-down:before{content:""}.bi-hand-thumbs-up-fill:before{content:""}.bi-hand-thumbs-up:before{content:""}.bi-handbag-fill:before{content:""}.bi-handbag:before{content:""}.bi-hash:before{content:""}.bi-hdd-fill:before{content:""}.bi-hdd-network-fill:before{content:""}.bi-hdd-network:before{content:""}.bi-hdd-rack-fill:before{content:""}.bi-hdd-rack:before{content:""}.bi-hdd-stack-fill:before{content:""}.bi-hdd-stack:before{content:""}.bi-hdd:before{content:""}.bi-headphones:before{content:""}.bi-headset:before{content:""}.bi-heart-fill:before{content:""}.bi-heart-half:before{content:""}.bi-heart:before{content:""}.bi-heptagon-fill:before{content:""}.bi-heptagon-half:before{content:""}.bi-heptagon:before{content:""}.bi-hexagon-fill:before{content:""}.bi-hexagon-half:before{content:""}.bi-hexagon:before{content:""}.bi-hourglass-bottom:before{content:""}.bi-hourglass-split:before{content:""}.bi-hourglass-top:before{content:""}.bi-hourglass:before{content:""}.bi-house-door-fill:before{content:""}.bi-house-door:before{content:""}.bi-house-fill:before{content:""}.bi-house:before{content:""}.bi-hr:before{content:""}.bi-hurricane:before{content:""}.bi-image-alt:before{content:""}.bi-image-fill:before{content:""}.bi-image:before{content:""}.bi-images:before{content:""}.bi-inbox-fill:before{content:""}.bi-inbox:before{content:""}.bi-inboxes-fill:before{content:""}.bi-inboxes:before{content:""}.bi-info-circle-fill:before{content:""}.bi-info-circle:before{content:""}.bi-info-square-fill:before{content:""}.bi-info-square:before{content:""}.bi-info:before{content:""}.bi-input-cursor-text:before{content:""}.bi-input-cursor:before{content:""}.bi-instagram:before{content:""}.bi-intersect:before{content:""}.bi-journal-album:before{content:""}.bi-journal-arrow-down:before{content:""}.bi-journal-arrow-up:before{content:""}.bi-journal-bookmark-fill:before{content:""}.bi-journal-bookmark:before{content:""}.bi-journal-check:before{content:""}.bi-journal-code:before{content:""}.bi-journal-medical:before{content:""}.bi-journal-minus:before{content:""}.bi-journal-plus:before{content:""}.bi-journal-richtext:before{content:""}.bi-journal-text:before{content:""}.bi-journal-x:before{content:""}.bi-journal:before{content:""}.bi-journals:before{content:""}.bi-joystick:before{content:""}.bi-justify-left:before{content:""}.bi-justify-right:before{content:""}.bi-justify:before{content:""}.bi-kanban-fill:before{content:""}.bi-kanban:before{content:""}.bi-key-fill:before{content:""}.bi-key:before{content:""}.bi-keyboard-fill:before{content:""}.bi-keyboard:before{content:""}.bi-ladder:before{content:""}.bi-lamp-fill:before{content:""}.bi-lamp:before{content:""}.bi-laptop-fill:before{content:""}.bi-laptop:before{content:""}.bi-layer-backward:before{content:""}.bi-layer-forward:before{content:""}.bi-layers-fill:before{content:""}.bi-layers-half:before{content:""}.bi-layers:before{content:""}.bi-layout-sidebar-inset-reverse:before{content:""}.bi-layout-sidebar-inset:before{content:""}.bi-layout-sidebar-reverse:before{content:""}.bi-layout-sidebar:before{content:""}.bi-layout-split:before{content:""}.bi-layout-text-sidebar-reverse:before{content:""}.bi-layout-text-sidebar:before{content:""}.bi-layout-text-window-reverse:before{content:""}.bi-layout-text-window:before{content:""}.bi-layout-three-columns:before{content:""}.bi-layout-wtf:before{content:""}.bi-life-preserver:before{content:""}.bi-lightbulb-fill:before{content:""}.bi-lightbulb-off-fill:before{content:""}.bi-lightbulb-off:before{content:""}.bi-lightbulb:before{content:""}.bi-lightning-charge-fill:before{content:""}.bi-lightning-charge:before{content:""}.bi-lightning-fill:before{content:""}.bi-lightning:before{content:""}.bi-link-45deg:before{content:""}.bi-link:before{content:""}.bi-linkedin:before{content:""}.bi-list-check:before{content:""}.bi-list-nested:before{content:""}.bi-list-ol:before{content:""}.bi-list-stars:before{content:""}.bi-list-task:before{content:""}.bi-list-ul:before{content:""}.bi-list:before{content:""}.bi-lock-fill:before{content:""}.bi-lock:before{content:""}.bi-mailbox:before{content:""}.bi-mailbox2:before{content:""}.bi-map-fill:before{content:""}.bi-map:before{content:""}.bi-markdown-fill:before{content:""}.bi-markdown:before{content:""}.bi-mask:before{content:""}.bi-megaphone-fill:before{content:""}.bi-megaphone:before{content:""}.bi-menu-app-fill:before{content:""}.bi-menu-app:before{content:""}.bi-menu-button-fill:before{content:""}.bi-menu-button-wide-fill:before{content:""}.bi-menu-button-wide:before{content:""}.bi-menu-button:before{content:""}.bi-menu-down:before{content:""}.bi-menu-up:before{content:""}.bi-mic-fill:before{content:""}.bi-mic-mute-fill:before{content:""}.bi-mic-mute:before{content:""}.bi-mic:before{content:""}.bi-minecart-loaded:before{content:""}.bi-minecart:before{content:""}.bi-moisture:before{content:""}.bi-moon-fill:before{content:""}.bi-moon-stars-fill:before{content:""}.bi-moon-stars:before{content:""}.bi-moon:before{content:""}.bi-mouse-fill:before{content:""}.bi-mouse:before{content:""}.bi-mouse2-fill:before{content:""}.bi-mouse2:before{content:""}.bi-mouse3-fill:before{content:""}.bi-mouse3:before{content:""}.bi-music-note-beamed:before{content:""}.bi-music-note-list:before{content:""}.bi-music-note:before{content:""}.bi-music-player-fill:before{content:""}.bi-music-player:before{content:""}.bi-newspaper:before{content:""}.bi-node-minus-fill:before{content:""}.bi-node-minus:before{content:""}.bi-node-plus-fill:before{content:""}.bi-node-plus:before{content:""}.bi-nut-fill:before{content:""}.bi-nut:before{content:""}.bi-octagon-fill:before{content:""}.bi-octagon-half:before{content:""}.bi-octagon:before{content:""}.bi-option:before{content:""}.bi-outlet:before{content:""}.bi-paint-bucket:before{content:""}.bi-palette-fill:before{content:""}.bi-palette:before{content:""}.bi-palette2:before{content:""}.bi-paperclip:before{content:""}.bi-paragraph:before{content:""}.bi-patch-check-fill:before{content:""}.bi-patch-check:before{content:""}.bi-patch-exclamation-fill:before{content:""}.bi-patch-exclamation:before{content:""}.bi-patch-minus-fill:before{content:""}.bi-patch-minus:before{content:""}.bi-patch-plus-fill:before{content:""}.bi-patch-plus:before{content:""}.bi-patch-question-fill:before{content:""}.bi-patch-question:before{content:""}.bi-pause-btn-fill:before{content:""}.bi-pause-btn:before{content:""}.bi-pause-circle-fill:before{content:""}.bi-pause-circle:before{content:""}.bi-pause-fill:before{content:""}.bi-pause:before{content:""}.bi-peace-fill:before{content:""}.bi-peace:before{content:""}.bi-pen-fill:before{content:""}.bi-pen:before{content:""}.bi-pencil-fill:before{content:""}.bi-pencil-square:before{content:""}.bi-pencil:before{content:""}.bi-pentagon-fill:before{content:""}.bi-pentagon-half:before{content:""}.bi-pentagon:before{content:""}.bi-people-fill:before{content:""}.bi-people:before{content:""}.bi-percent:before{content:""}.bi-person-badge-fill:before{content:""}.bi-person-badge:before{content:""}.bi-person-bounding-box:before{content:""}.bi-person-check-fill:before{content:""}.bi-person-check:before{content:""}.bi-person-circle:before{content:""}.bi-person-dash-fill:before{content:""}.bi-person-dash:before{content:""}.bi-person-fill:before{content:""}.bi-person-lines-fill:before{content:""}.bi-person-plus-fill:before{content:""}.bi-person-plus:before{content:""}.bi-person-square:before{content:""}.bi-person-x-fill:before{content:""}.bi-person-x:before{content:""}.bi-person:before{content:""}.bi-phone-fill:before{content:""}.bi-phone-landscape-fill:before{content:""}.bi-phone-landscape:before{content:""}.bi-phone-vibrate-fill:before{content:""}.bi-phone-vibrate:before{content:""}.bi-phone:before{content:""}.bi-pie-chart-fill:before{content:""}.bi-pie-chart:before{content:""}.bi-pin-angle-fill:before{content:""}.bi-pin-angle:before{content:""}.bi-pin-fill:before{content:""}.bi-pin:before{content:""}.bi-pip-fill:before{content:""}.bi-pip:before{content:""}.bi-play-btn-fill:before{content:""}.bi-play-btn:before{content:""}.bi-play-circle-fill:before{content:""}.bi-play-circle:before{content:""}.bi-play-fill:before{content:""}.bi-play:before{content:""}.bi-plug-fill:before{content:""}.bi-plug:before{content:""}.bi-plus-circle-dotted:before{content:""}.bi-plus-circle-fill:before{content:""}.bi-plus-circle:before{content:""}.bi-plus-square-dotted:before{content:""}.bi-plus-square-fill:before{content:""}.bi-plus-square:before{content:""}.bi-plus:before{content:""}.bi-power:before{content:""}.bi-printer-fill:before{content:""}.bi-printer:before{content:""}.bi-puzzle-fill:before{content:""}.bi-puzzle:before{content:""}.bi-question-circle-fill:before{content:""}.bi-question-circle:before{content:""}.bi-question-diamond-fill:before{content:""}.bi-question-diamond:before{content:""}.bi-question-octagon-fill:before{content:""}.bi-question-octagon:before{content:""}.bi-question-square-fill:before{content:""}.bi-question-square:before{content:""}.bi-question:before{content:""}.bi-rainbow:before{content:""}.bi-receipt-cutoff:before{content:""}.bi-receipt:before{content:""}.bi-reception-0:before{content:""}.bi-reception-1:before{content:""}.bi-reception-2:before{content:""}.bi-reception-3:before{content:""}.bi-reception-4:before{content:""}.bi-record-btn-fill:before{content:""}.bi-record-btn:before{content:""}.bi-record-circle-fill:before{content:""}.bi-record-circle:before{content:""}.bi-record-fill:before{content:""}.bi-record:before{content:""}.bi-record2-fill:before{content:""}.bi-record2:before{content:""}.bi-reply-all-fill:before{content:""}.bi-reply-all:before{content:""}.bi-reply-fill:before{content:""}.bi-reply:before{content:""}.bi-rss-fill:before{content:""}.bi-rss:before{content:""}.bi-rulers:before{content:""}.bi-save-fill:before{content:""}.bi-save:before{content:""}.bi-save2-fill:before{content:""}.bi-save2:before{content:""}.bi-scissors:before{content:""}.bi-screwdriver:before{content:""}.bi-search:before{content:""}.bi-segmented-nav:before{content:""}.bi-server:before{content:""}.bi-share-fill:before{content:""}.bi-share:before{content:""}.bi-shield-check:before{content:""}.bi-shield-exclamation:before{content:""}.bi-shield-fill-check:before{content:""}.bi-shield-fill-exclamation:before{content:""}.bi-shield-fill-minus:before{content:""}.bi-shield-fill-plus:before{content:""}.bi-shield-fill-x:before{content:""}.bi-shield-fill:before{content:""}.bi-shield-lock-fill:before{content:""}.bi-shield-lock:before{content:""}.bi-shield-minus:before{content:""}.bi-shield-plus:before{content:""}.bi-shield-shaded:before{content:""}.bi-shield-slash-fill:before{content:""}.bi-shield-slash:before{content:""}.bi-shield-x:before{content:""}.bi-shield:before{content:""}.bi-shift-fill:before{content:""}.bi-shift:before{content:""}.bi-shop-window:before{content:""}.bi-shop:before{content:""}.bi-shuffle:before{content:""}.bi-signpost-2-fill:before{content:""}.bi-signpost-2:before{content:""}.bi-signpost-fill:before{content:""}.bi-signpost-split-fill:before{content:""}.bi-signpost-split:before{content:""}.bi-signpost:before{content:""}.bi-sim-fill:before{content:""}.bi-sim:before{content:""}.bi-skip-backward-btn-fill:before{content:""}.bi-skip-backward-btn:before{content:""}.bi-skip-backward-circle-fill:before{content:""}.bi-skip-backward-circle:before{content:""}.bi-skip-backward-fill:before{content:""}.bi-skip-backward:before{content:""}.bi-skip-end-btn-fill:before{content:""}.bi-skip-end-btn:before{content:""}.bi-skip-end-circle-fill:before{content:""}.bi-skip-end-circle:before{content:""}.bi-skip-end-fill:before{content:""}.bi-skip-end:before{content:""}.bi-skip-forward-btn-fill:before{content:""}.bi-skip-forward-btn:before{content:""}.bi-skip-forward-circle-fill:before{content:""}.bi-skip-forward-circle:before{content:""}.bi-skip-forward-fill:before{content:""}.bi-skip-forward:before{content:""}.bi-skip-start-btn-fill:before{content:""}.bi-skip-start-btn:before{content:""}.bi-skip-start-circle-fill:before{content:""}.bi-skip-start-circle:before{content:""}.bi-skip-start-fill:before{content:""}.bi-skip-start:before{content:""}.bi-slack:before{content:""}.bi-slash-circle-fill:before{content:""}.bi-slash-circle:before{content:""}.bi-slash-square-fill:before{content:""}.bi-slash-square:before{content:""}.bi-slash:before{content:""}.bi-sliders:before{content:""}.bi-smartwatch:before{content:""}.bi-snow:before{content:""}.bi-snow2:before{content:""}.bi-snow3:before{content:""}.bi-sort-alpha-down-alt:before{content:""}.bi-sort-alpha-down:before{content:""}.bi-sort-alpha-up-alt:before{content:""}.bi-sort-alpha-up:before{content:""}.bi-sort-down-alt:before{content:""}.bi-sort-down:before{content:""}.bi-sort-numeric-down-alt:before{content:""}.bi-sort-numeric-down:before{content:""}.bi-sort-numeric-up-alt:before{content:""}.bi-sort-numeric-up:before{content:""}.bi-sort-up-alt:before{content:""}.bi-sort-up:before{content:""}.bi-soundwave:before{content:""}.bi-speaker-fill:before{content:""}.bi-speaker:before{content:""}.bi-speedometer:before{content:""}.bi-speedometer2:before{content:""}.bi-spellcheck:before{content:""}.bi-square-fill:before{content:""}.bi-square-half:before{content:""}.bi-square:before{content:""}.bi-stack:before{content:""}.bi-star-fill:before{content:""}.bi-star-half:before{content:""}.bi-star:before{content:""}.bi-stars:before{content:""}.bi-stickies-fill:before{content:""}.bi-stickies:before{content:""}.bi-sticky-fill:before{content:""}.bi-sticky:before{content:""}.bi-stop-btn-fill:before{content:""}.bi-stop-btn:before{content:""}.bi-stop-circle-fill:before{content:""}.bi-stop-circle:before{content:""}.bi-stop-fill:before{content:""}.bi-stop:before{content:""}.bi-stoplights-fill:before{content:""}.bi-stoplights:before{content:""}.bi-stopwatch-fill:before{content:""}.bi-stopwatch:before{content:""}.bi-subtract:before{content:""}.bi-suit-club-fill:before{content:""}.bi-suit-club:before{content:""}.bi-suit-diamond-fill:before{content:""}.bi-suit-diamond:before{content:""}.bi-suit-heart-fill:before{content:""}.bi-suit-heart:before{content:""}.bi-suit-spade-fill:before{content:""}.bi-suit-spade:before{content:""}.bi-sun-fill:before{content:""}.bi-sun:before{content:""}.bi-sunglasses:before{content:""}.bi-sunrise-fill:before{content:""}.bi-sunrise:before{content:""}.bi-sunset-fill:before{content:""}.bi-sunset:before{content:""}.bi-symmetry-horizontal:before{content:""}.bi-symmetry-vertical:before{content:""}.bi-table:before{content:""}.bi-tablet-fill:before{content:""}.bi-tablet-landscape-fill:before{content:""}.bi-tablet-landscape:before{content:""}.bi-tablet:before{content:""}.bi-tag-fill:before{content:""}.bi-tag:before{content:""}.bi-tags-fill:before{content:""}.bi-tags:before{content:""}.bi-telegram:before{content:""}.bi-telephone-fill:before{content:""}.bi-telephone-forward-fill:before{content:""}.bi-telephone-forward:before{content:""}.bi-telephone-inbound-fill:before{content:""}.bi-telephone-inbound:before{content:""}.bi-telephone-minus-fill:before{content:""}.bi-telephone-minus:before{content:""}.bi-telephone-outbound-fill:before{content:""}.bi-telephone-outbound:before{content:""}.bi-telephone-plus-fill:before{content:""}.bi-telephone-plus:before{content:""}.bi-telephone-x-fill:before{content:""}.bi-telephone-x:before{content:""}.bi-telephone:before{content:""}.bi-terminal-fill:before{content:""}.bi-terminal:before{content:""}.bi-text-center:before{content:""}.bi-text-indent-left:before{content:""}.bi-text-indent-right:before{content:""}.bi-text-left:before{content:""}.bi-text-paragraph:before{content:""}.bi-text-right:before{content:""}.bi-textarea-resize:before{content:""}.bi-textarea-t:before{content:""}.bi-textarea:before{content:""}.bi-thermometer-half:before{content:""}.bi-thermometer-high:before{content:""}.bi-thermometer-low:before{content:""}.bi-thermometer-snow:before{content:""}.bi-thermometer-sun:before{content:""}.bi-thermometer:before{content:""}.bi-three-dots-vertical:before{content:""}.bi-three-dots:before{content:""}.bi-toggle-off:before{content:""}.bi-toggle-on:before{content:""}.bi-toggle2-off:before{content:""}.bi-toggle2-on:before{content:""}.bi-toggles:before{content:""}.bi-toggles2:before{content:""}.bi-tools:before{content:""}.bi-tornado:before{content:""}.bi-trash-fill:before{content:""}.bi-trash:before{content:""}.bi-trash2-fill:before{content:""}.bi-trash2:before{content:""}.bi-tree-fill:before{content:""}.bi-tree:before{content:""}.bi-triangle-fill:before{content:""}.bi-triangle-half:before{content:""}.bi-triangle:before{content:""}.bi-trophy-fill:before{content:""}.bi-trophy:before{content:""}.bi-tropical-storm:before{content:""}.bi-truck-flatbed:before{content:""}.bi-truck:before{content:""}.bi-tsunami:before{content:""}.bi-tv-fill:before{content:""}.bi-tv:before{content:""}.bi-twitch:before{content:""}.bi-twitter:before{content:""}.bi-type-bold:before{content:""}.bi-type-h1:before{content:""}.bi-type-h2:before{content:""}.bi-type-h3:before{content:""}.bi-type-italic:before{content:""}.bi-type-strikethrough:before{content:""}.bi-type-underline:before{content:""}.bi-type:before{content:""}.bi-ui-checks-grid:before{content:""}.bi-ui-checks:before{content:""}.bi-ui-radios-grid:before{content:""}.bi-ui-radios:before{content:""}.bi-umbrella-fill:before{content:""}.bi-umbrella:before{content:""}.bi-union:before{content:""}.bi-unlock-fill:before{content:""}.bi-unlock:before{content:""}.bi-upc-scan:before{content:""}.bi-upc:before{content:""}.bi-upload:before{content:""}.bi-vector-pen:before{content:""}.bi-view-list:before{content:""}.bi-view-stacked:before{content:""}.bi-vinyl-fill:before{content:""}.bi-vinyl:before{content:""}.bi-voicemail:before{content:""}.bi-volume-down-fill:before{content:""}.bi-volume-down:before{content:""}.bi-volume-mute-fill:before{content:""}.bi-volume-mute:before{content:""}.bi-volume-off-fill:before{content:""}.bi-volume-off:before{content:""}.bi-volume-up-fill:before{content:""}.bi-volume-up:before{content:""}.bi-vr:before{content:""}.bi-wallet-fill:before{content:""}.bi-wallet:before{content:""}.bi-wallet2:before{content:""}.bi-watch:before{content:""}.bi-water:before{content:""}.bi-whatsapp:before{content:""}.bi-wifi-1:before{content:""}.bi-wifi-2:before{content:""}.bi-wifi-off:before{content:""}.bi-wifi:before{content:""}.bi-wind:before{content:""}.bi-window-dock:before{content:""}.bi-window-sidebar:before{content:""}.bi-window:before{content:""}.bi-wrench:before{content:""}.bi-x-circle-fill:before{content:""}.bi-x-circle:before{content:""}.bi-x-diamond-fill:before{content:""}.bi-x-diamond:before{content:""}.bi-x-octagon-fill:before{content:""}.bi-x-octagon:before{content:""}.bi-x-square-fill:before{content:""}.bi-x-square:before{content:""}.bi-x:before{content:""}.bi-youtube:before{content:""}.bi-zoom-in:before{content:""}.bi-zoom-out:before{content:""}.bi-bank:before{content:""}.bi-bank2:before{content:""}.bi-bell-slash-fill:before{content:""}.bi-bell-slash:before{content:""}.bi-cash-coin:before{content:""}.bi-check-lg:before{content:""}.bi-coin:before{content:""}.bi-currency-bitcoin:before{content:""}.bi-currency-dollar:before{content:""}.bi-currency-euro:before{content:""}.bi-currency-exchange:before{content:""}.bi-currency-pound:before{content:""}.bi-currency-yen:before{content:""}.bi-dash-lg:before{content:""}.bi-exclamation-lg:before{content:""}.bi-file-earmark-pdf-fill:before{content:""}.bi-file-earmark-pdf:before{content:""}.bi-file-pdf-fill:before{content:""}.bi-file-pdf:before{content:""}.bi-gender-ambiguous:before{content:""}.bi-gender-female:before{content:""}.bi-gender-male:before{content:""}.bi-gender-trans:before{content:""}.bi-headset-vr:before{content:""}.bi-info-lg:before{content:""}.bi-mastodon:before{content:""}.bi-messenger:before{content:""}.bi-piggy-bank-fill:before{content:""}.bi-piggy-bank:before{content:""}.bi-pin-map-fill:before{content:""}.bi-pin-map:before{content:""}.bi-plus-lg:before{content:""}.bi-question-lg:before{content:""}.bi-recycle:before{content:""}.bi-reddit:before{content:""}.bi-safe-fill:before{content:""}.bi-safe2-fill:before{content:""}.bi-safe2:before{content:""}.bi-sd-card-fill:before{content:""}.bi-sd-card:before{content:""}.bi-skype:before{content:""}.bi-slash-lg:before{content:""}.bi-translate:before{content:""}.bi-x-lg:before{content:""}.bi-safe:before{content:""}.bi-apple:before{content:""}.bi-microsoft:before{content:""}.bi-windows:before{content:""}.bi-behance:before{content:""}.bi-dribbble:before{content:""}.bi-line:before{content:""}.bi-medium:before{content:""}.bi-paypal:before{content:""}.bi-pinterest:before{content:""}.bi-signal:before{content:""}.bi-snapchat:before{content:""}.bi-spotify:before{content:""}.bi-stack-overflow:before{content:""}.bi-strava:before{content:""}.bi-wordpress:before{content:""}.bi-vimeo:before{content:""}.bi-activity:before{content:""}.bi-easel2-fill:before{content:""}.bi-easel2:before{content:""}.bi-easel3-fill:before{content:""}.bi-easel3:before{content:""}.bi-fan:before{content:""}.bi-fingerprint:before{content:""}.bi-graph-down-arrow:before{content:""}.bi-graph-up-arrow:before{content:""}.bi-hypnotize:before{content:""}.bi-magic:before{content:""}.bi-person-rolodex:before{content:""}.bi-person-video:before{content:""}.bi-person-video2:before{content:""}.bi-person-video3:before{content:""}.bi-person-workspace:before{content:""}.bi-radioactive:before{content:""}.bi-webcam-fill:before{content:""}.bi-webcam:before{content:""}.bi-yin-yang:before{content:""}.bi-bandaid-fill:before{content:""}.bi-bandaid:before{content:""}.bi-bluetooth:before{content:""}.bi-body-text:before{content:""}.bi-boombox:before{content:""}.bi-boxes:before{content:""}.bi-dpad-fill:before{content:""}.bi-dpad:before{content:""}.bi-ear-fill:before{content:""}.bi-ear:before{content:""}.bi-envelope-check-fill:before{content:""}.bi-envelope-check:before{content:""}.bi-envelope-dash-fill:before{content:""}.bi-envelope-dash:before{content:""}.bi-envelope-exclamation-fill:before{content:""}.bi-envelope-exclamation:before{content:""}.bi-envelope-plus-fill:before{content:""}.bi-envelope-plus:before{content:""}.bi-envelope-slash-fill:before{content:""}.bi-envelope-slash:before{content:""}.bi-envelope-x-fill:before{content:""}.bi-envelope-x:before{content:""}.bi-explicit-fill:before{content:""}.bi-explicit:before{content:""}.bi-git:before{content:""}.bi-infinity:before{content:""}.bi-list-columns-reverse:before{content:""}.bi-list-columns:before{content:""}.bi-meta:before{content:""}.bi-nintendo-switch:before{content:""}.bi-pc-display-horizontal:before{content:""}.bi-pc-display:before{content:""}.bi-pc-horizontal:before{content:""}.bi-pc:before{content:""}.bi-playstation:before{content:""}.bi-plus-slash-minus:before{content:""}.bi-projector-fill:before{content:""}.bi-projector:before{content:""}.bi-qr-code-scan:before{content:""}.bi-qr-code:before{content:""}.bi-quora:before{content:""}.bi-quote:before{content:""}.bi-robot:before{content:""}.bi-send-check-fill:before{content:""}.bi-send-check:before{content:""}.bi-send-dash-fill:before{content:""}.bi-send-dash:before{content:""}.bi-send-exclamation-fill:before{content:""}.bi-send-exclamation:before{content:""}.bi-send-fill:before{content:""}.bi-send-plus-fill:before{content:""}.bi-send-plus:before{content:""}.bi-send-slash-fill:before{content:""}.bi-send-slash:before{content:""}.bi-send-x-fill:before{content:""}.bi-send-x:before{content:""}.bi-send:before{content:""}.bi-steam:before{content:""}.bi-terminal-dash:before{content:""}.bi-terminal-plus:before{content:""}.bi-terminal-split:before{content:""}.bi-ticket-detailed-fill:before{content:""}.bi-ticket-detailed:before{content:""}.bi-ticket-fill:before{content:""}.bi-ticket-perforated-fill:before{content:""}.bi-ticket-perforated:before{content:""}.bi-ticket:before{content:""}.bi-tiktok:before{content:""}.bi-window-dash:before{content:""}.bi-window-desktop:before{content:""}.bi-window-fullscreen:before{content:""}.bi-window-plus:before{content:""}.bi-window-split:before{content:""}.bi-window-stack:before{content:""}.bi-window-x:before{content:""}.bi-xbox:before{content:""}.bi-ethernet:before{content:""}.bi-hdmi-fill:before{content:""}.bi-hdmi:before{content:""}.bi-usb-c-fill:before{content:""}.bi-usb-c:before{content:""}.bi-usb-fill:before{content:""}.bi-usb-plug-fill:before{content:""}.bi-usb-plug:before{content:""}.bi-usb-symbol:before{content:""}.bi-usb:before{content:""}.bi-boombox-fill:before{content:""}.bi-displayport:before{content:""}.bi-gpu-card:before{content:""}.bi-memory:before{content:""}.bi-modem-fill:before{content:""}.bi-modem:before{content:""}.bi-motherboard-fill:before{content:""}.bi-motherboard:before{content:""}.bi-optical-audio-fill:before{content:""}.bi-optical-audio:before{content:""}.bi-pci-card:before{content:""}.bi-router-fill:before{content:""}.bi-router:before{content:""}.bi-thunderbolt-fill:before{content:""}.bi-thunderbolt:before{content:""}.bi-usb-drive-fill:before{content:""}.bi-usb-drive:before{content:""}.bi-usb-micro-fill:before{content:""}.bi-usb-micro:before{content:""}.bi-usb-mini-fill:before{content:""}.bi-usb-mini:before{content:""}.bi-cloud-haze2:before{content:""}.bi-device-hdd-fill:before{content:""}.bi-device-hdd:before{content:""}.bi-device-ssd-fill:before{content:""}.bi-device-ssd:before{content:""}.bi-displayport-fill:before{content:""}.bi-mortarboard-fill:before{content:""}.bi-mortarboard:before{content:""}.bi-terminal-x:before{content:""}.bi-arrow-through-heart-fill:before{content:""}.bi-arrow-through-heart:before{content:""}.bi-badge-sd-fill:before{content:""}.bi-badge-sd:before{content:""}.bi-bag-heart-fill:before{content:""}.bi-bag-heart:before{content:""}.bi-balloon-fill:before{content:""}.bi-balloon-heart-fill:before{content:""}.bi-balloon-heart:before{content:""}.bi-balloon:before{content:""}.bi-box2-fill:before{content:""}.bi-box2-heart-fill:before{content:""}.bi-box2-heart:before{content:""}.bi-box2:before{content:""}.bi-braces-asterisk:before{content:""}.bi-calendar-heart-fill:before{content:""}.bi-calendar-heart:before{content:""}.bi-calendar2-heart-fill:before{content:""}.bi-calendar2-heart:before{content:""}.bi-chat-heart-fill:before{content:""}.bi-chat-heart:before{content:""}.bi-chat-left-heart-fill:before{content:""}.bi-chat-left-heart:before{content:""}.bi-chat-right-heart-fill:before{content:""}.bi-chat-right-heart:before{content:""}.bi-chat-square-heart-fill:before{content:""}.bi-chat-square-heart:before{content:""}.bi-clipboard-check-fill:before{content:""}.bi-clipboard-data-fill:before{content:""}.bi-clipboard-fill:before{content:""}.bi-clipboard-heart-fill:before{content:""}.bi-clipboard-heart:before{content:""}.bi-clipboard-minus-fill:before{content:""}.bi-clipboard-plus-fill:before{content:""}.bi-clipboard-pulse:before{content:""}.bi-clipboard-x-fill:before{content:""}.bi-clipboard2-check-fill:before{content:""}.bi-clipboard2-check:before{content:""}.bi-clipboard2-data-fill:before{content:""}.bi-clipboard2-data:before{content:""}.bi-clipboard2-fill:before{content:""}.bi-clipboard2-heart-fill:before{content:""}.bi-clipboard2-heart:before{content:""}.bi-clipboard2-minus-fill:before{content:""}.bi-clipboard2-minus:before{content:""}.bi-clipboard2-plus-fill:before{content:""}.bi-clipboard2-plus:before{content:""}.bi-clipboard2-pulse-fill:before{content:""}.bi-clipboard2-pulse:before{content:""}.bi-clipboard2-x-fill:before{content:""}.bi-clipboard2-x:before{content:""}.bi-clipboard2:before{content:""}.bi-emoji-kiss-fill:before{content:""}.bi-emoji-kiss:before{content:""}.bi-envelope-heart-fill:before{content:""}.bi-envelope-heart:before{content:""}.bi-envelope-open-heart-fill:before{content:""}.bi-envelope-open-heart:before{content:""}.bi-envelope-paper-fill:before{content:""}.bi-envelope-paper-heart-fill:before{content:""}.bi-envelope-paper-heart:before{content:""}.bi-envelope-paper:before{content:""}.bi-filetype-aac:before{content:""}.bi-filetype-ai:before{content:""}.bi-filetype-bmp:before{content:""}.bi-filetype-cs:before{content:""}.bi-filetype-css:before{content:""}.bi-filetype-csv:before{content:""}.bi-filetype-doc:before{content:""}.bi-filetype-docx:before{content:""}.bi-filetype-exe:before{content:""}.bi-filetype-gif:before{content:""}.bi-filetype-heic:before{content:""}.bi-filetype-html:before{content:""}.bi-filetype-java:before{content:""}.bi-filetype-jpg:before{content:""}.bi-filetype-js:before{content:""}.bi-filetype-jsx:before{content:""}.bi-filetype-key:before{content:""}.bi-filetype-m4p:before{content:""}.bi-filetype-md:before{content:""}.bi-filetype-mdx:before{content:""}.bi-filetype-mov:before{content:""}.bi-filetype-mp3:before{content:""}.bi-filetype-mp4:before{content:""}.bi-filetype-otf:before{content:""}.bi-filetype-pdf:before{content:""}.bi-filetype-php:before{content:""}.bi-filetype-png:before{content:""}.bi-filetype-ppt:before{content:""}.bi-filetype-psd:before{content:""}.bi-filetype-py:before{content:""}.bi-filetype-raw:before{content:""}.bi-filetype-rb:before{content:""}.bi-filetype-sass:before{content:""}.bi-filetype-scss:before{content:""}.bi-filetype-sh:before{content:""}.bi-filetype-svg:before{content:""}.bi-filetype-tiff:before{content:""}.bi-filetype-tsx:before{content:""}.bi-filetype-ttf:before{content:""}.bi-filetype-txt:before{content:""}.bi-filetype-wav:before{content:""}.bi-filetype-woff:before{content:""}.bi-filetype-xls:before{content:""}.bi-filetype-xml:before{content:""}.bi-filetype-yml:before{content:""}.bi-heart-arrow:before{content:""}.bi-heart-pulse-fill:before{content:""}.bi-heart-pulse:before{content:""}.bi-heartbreak-fill:before{content:""}.bi-heartbreak:before{content:""}.bi-hearts:before{content:""}.bi-hospital-fill:before{content:""}.bi-hospital:before{content:""}.bi-house-heart-fill:before{content:""}.bi-house-heart:before{content:""}.bi-incognito:before{content:""}.bi-magnet-fill:before{content:""}.bi-magnet:before{content:""}.bi-person-heart:before{content:""}.bi-person-hearts:before{content:""}.bi-phone-flip:before{content:""}.bi-plugin:before{content:""}.bi-postage-fill:before{content:""}.bi-postage-heart-fill:before{content:""}.bi-postage-heart:before{content:""}.bi-postage:before{content:""}.bi-postcard-fill:before{content:""}.bi-postcard-heart-fill:before{content:""}.bi-postcard-heart:before{content:""}.bi-postcard:before{content:""}.bi-search-heart-fill:before{content:""}.bi-search-heart:before{content:""}.bi-sliders2-vertical:before{content:""}.bi-sliders2:before{content:""}.bi-trash3-fill:before{content:""}.bi-trash3:before{content:""}.bi-valentine:before{content:""}.bi-valentine2:before{content:""}.bi-wrench-adjustable-circle-fill:before{content:""}.bi-wrench-adjustable-circle:before{content:""}.bi-wrench-adjustable:before{content:""}.bi-filetype-json:before{content:""}.bi-filetype-pptx:before{content:""}.bi-filetype-xlsx:before{content:""}.bi-1-circle-fill:before{content:""}.bi-1-circle:before{content:""}.bi-1-square-fill:before{content:""}.bi-1-square:before{content:""}.bi-2-circle-fill:before{content:""}.bi-2-circle:before{content:""}.bi-2-square-fill:before{content:""}.bi-2-square:before{content:""}.bi-3-circle-fill:before{content:""}.bi-3-circle:before{content:""}.bi-3-square-fill:before{content:""}.bi-3-square:before{content:""}.bi-4-circle-fill:before{content:""}.bi-4-circle:before{content:""}.bi-4-square-fill:before{content:""}.bi-4-square:before{content:""}.bi-5-circle-fill:before{content:""}.bi-5-circle:before{content:""}.bi-5-square-fill:before{content:""}.bi-5-square:before{content:""}.bi-6-circle-fill:before{content:""}.bi-6-circle:before{content:""}.bi-6-square-fill:before{content:""}.bi-6-square:before{content:""}.bi-7-circle-fill:before{content:""}.bi-7-circle:before{content:""}.bi-7-square-fill:before{content:""}.bi-7-square:before{content:""}.bi-8-circle-fill:before{content:""}.bi-8-circle:before{content:""}.bi-8-square-fill:before{content:""}.bi-8-square:before{content:""}.bi-9-circle-fill:before{content:""}.bi-9-circle:before{content:""}.bi-9-square-fill:before{content:""}.bi-9-square:before{content:""}.bi-airplane-engines-fill:before{content:""}.bi-airplane-engines:before{content:""}.bi-airplane-fill:before{content:""}.bi-airplane:before{content:""}.bi-alexa:before{content:""}.bi-alipay:before{content:""}.bi-android:before{content:""}.bi-android2:before{content:""}.bi-box-fill:before{content:""}.bi-box-seam-fill:before{content:""}.bi-browser-chrome:before{content:""}.bi-browser-edge:before{content:""}.bi-browser-firefox:before{content:""}.bi-browser-safari:before{content:""}.bi-c-circle-fill:before{content:""}.bi-c-circle:before{content:""}.bi-c-square-fill:before{content:""}.bi-c-square:before{content:""}.bi-capsule-pill:before{content:""}.bi-capsule:before{content:""}.bi-car-front-fill:before{content:""}.bi-car-front:before{content:""}.bi-cassette-fill:before{content:""}.bi-cassette:before{content:""}.bi-cc-circle-fill:before{content:""}.bi-cc-circle:before{content:""}.bi-cc-square-fill:before{content:""}.bi-cc-square:before{content:""}.bi-cup-hot-fill:before{content:""}.bi-cup-hot:before{content:""}.bi-currency-rupee:before{content:""}.bi-dropbox:before{content:""}.bi-escape:before{content:""}.bi-fast-forward-btn-fill:before{content:""}.bi-fast-forward-btn:before{content:""}.bi-fast-forward-circle-fill:before{content:""}.bi-fast-forward-circle:before{content:""}.bi-fast-forward-fill:before{content:""}.bi-fast-forward:before{content:""}.bi-filetype-sql:before{content:""}.bi-fire:before{content:""}.bi-google-play:before{content:""}.bi-h-circle-fill:before{content:""}.bi-h-circle:before{content:""}.bi-h-square-fill:before{content:""}.bi-h-square:before{content:""}.bi-indent:before{content:""}.bi-lungs-fill:before{content:""}.bi-lungs:before{content:""}.bi-microsoft-teams:before{content:""}.bi-p-circle-fill:before{content:""}.bi-p-circle:before{content:""}.bi-p-square-fill:before{content:""}.bi-p-square:before{content:""}.bi-pass-fill:before{content:""}.bi-pass:before{content:""}.bi-prescription:before{content:""}.bi-prescription2:before{content:""}.bi-r-circle-fill:before{content:""}.bi-r-circle:before{content:""}.bi-r-square-fill:before{content:""}.bi-r-square:before{content:""}.bi-repeat-1:before{content:""}.bi-repeat:before{content:""}.bi-rewind-btn-fill:before{content:""}.bi-rewind-btn:before{content:""}.bi-rewind-circle-fill:before{content:""}.bi-rewind-circle:before{content:""}.bi-rewind-fill:before{content:""}.bi-rewind:before{content:""}.bi-train-freight-front-fill:before{content:""}.bi-train-freight-front:before{content:""}.bi-train-front-fill:before{content:""}.bi-train-front:before{content:""}.bi-train-lightrail-front-fill:before{content:""}.bi-train-lightrail-front:before{content:""}.bi-truck-front-fill:before{content:""}.bi-truck-front:before{content:""}.bi-ubuntu:before{content:""}.bi-unindent:before{content:""}.bi-unity:before{content:""}.bi-universal-access-circle:before{content:""}.bi-universal-access:before{content:""}.bi-virus:before{content:""}.bi-virus2:before{content:""}.bi-wechat:before{content:""}.bi-yelp:before{content:""}.bi-sign-stop-fill:before{content:""}.bi-sign-stop-lights-fill:before{content:""}.bi-sign-stop-lights:before{content:""}.bi-sign-stop:before{content:""}.bi-sign-turn-left-fill:before{content:""}.bi-sign-turn-left:before{content:""}.bi-sign-turn-right-fill:before{content:""}.bi-sign-turn-right:before{content:""}.bi-sign-turn-slight-left-fill:before{content:""}.bi-sign-turn-slight-left:before{content:""}.bi-sign-turn-slight-right-fill:before{content:""}.bi-sign-turn-slight-right:before{content:""}.bi-sign-yield-fill:before{content:""}.bi-sign-yield:before{content:""}.bi-ev-station-fill:before{content:""}.bi-ev-station:before{content:""}.bi-fuel-pump-diesel-fill:before{content:""}.bi-fuel-pump-diesel:before{content:""}.bi-fuel-pump-fill:before{content:""}.bi-fuel-pump:before{content:""}.bi-0-circle-fill:before{content:""}.bi-0-circle:before{content:""}.bi-0-square-fill:before{content:""}.bi-0-square:before{content:""}.bi-rocket-fill:before{content:""}.bi-rocket-takeoff-fill:before{content:""}.bi-rocket-takeoff:before{content:""}.bi-rocket:before{content:""}.bi-stripe:before{content:""}.bi-subscript:before{content:""}.bi-superscript:before{content:""}.bi-trello:before{content:""}.bi-envelope-at-fill:before{content:""}.bi-envelope-at:before{content:""}.bi-regex:before{content:""}.bi-text-wrap:before{content:""}.bi-sign-dead-end-fill:before{content:""}.bi-sign-dead-end:before{content:""}.bi-sign-do-not-enter-fill:before{content:""}.bi-sign-do-not-enter:before{content:""}.bi-sign-intersection-fill:before{content:""}.bi-sign-intersection-side-fill:before{content:""}.bi-sign-intersection-side:before{content:""}.bi-sign-intersection-t-fill:before{content:""}.bi-sign-intersection-t:before{content:""}.bi-sign-intersection-y-fill:before{content:""}.bi-sign-intersection-y:before{content:""}.bi-sign-intersection:before{content:""}.bi-sign-merge-left-fill:before{content:""}.bi-sign-merge-left:before{content:""}.bi-sign-merge-right-fill:before{content:""}.bi-sign-merge-right:before{content:""}.bi-sign-no-left-turn-fill:before{content:""}.bi-sign-no-left-turn:before{content:""}.bi-sign-no-parking-fill:before{content:""}.bi-sign-no-parking:before{content:""}.bi-sign-no-right-turn-fill:before{content:""}.bi-sign-no-right-turn:before{content:""}.bi-sign-railroad-fill:before{content:""}.bi-sign-railroad:before{content:""}.bi-building-add:before{content:""}.bi-building-check:before{content:""}.bi-building-dash:before{content:""}.bi-building-down:before{content:""}.bi-building-exclamation:before{content:""}.bi-building-fill-add:before{content:""}.bi-building-fill-check:before{content:""}.bi-building-fill-dash:before{content:""}.bi-building-fill-down:before{content:""}.bi-building-fill-exclamation:before{content:""}.bi-building-fill-gear:before{content:""}.bi-building-fill-lock:before{content:""}.bi-building-fill-slash:before{content:""}.bi-building-fill-up:before{content:""}.bi-building-fill-x:before{content:""}.bi-building-fill:before{content:""}.bi-building-gear:before{content:""}.bi-building-lock:before{content:""}.bi-building-slash:before{content:""}.bi-building-up:before{content:""}.bi-building-x:before{content:""}.bi-buildings-fill:before{content:""}.bi-buildings:before{content:""}.bi-bus-front-fill:before{content:""}.bi-bus-front:before{content:""}.bi-ev-front-fill:before{content:""}.bi-ev-front:before{content:""}.bi-globe-americas:before{content:""}.bi-globe-asia-australia:before{content:""}.bi-globe-central-south-asia:before{content:""}.bi-globe-europe-africa:before{content:""}.bi-house-add-fill:before{content:""}.bi-house-add:before{content:""}.bi-house-check-fill:before{content:""}.bi-house-check:before{content:""}.bi-house-dash-fill:before{content:""}.bi-house-dash:before{content:""}.bi-house-down-fill:before{content:""}.bi-house-down:before{content:""}.bi-house-exclamation-fill:before{content:""}.bi-house-exclamation:before{content:""}.bi-house-gear-fill:before{content:""}.bi-house-gear:before{content:""}.bi-house-lock-fill:before{content:""}.bi-house-lock:before{content:""}.bi-house-slash-fill:before{content:""}.bi-house-slash:before{content:""}.bi-house-up-fill:before{content:""}.bi-house-up:before{content:""}.bi-house-x-fill:before{content:""}.bi-house-x:before{content:""}.bi-person-add:before{content:""}.bi-person-down:before{content:""}.bi-person-exclamation:before{content:""}.bi-person-fill-add:before{content:""}.bi-person-fill-check:before{content:""}.bi-person-fill-dash:before{content:""}.bi-person-fill-down:before{content:""}.bi-person-fill-exclamation:before{content:""}.bi-person-fill-gear:before{content:""}.bi-person-fill-lock:before{content:""}.bi-person-fill-slash:before{content:""}.bi-person-fill-up:before{content:""}.bi-person-fill-x:before{content:""}.bi-person-gear:before{content:""}.bi-person-lock:before{content:""}.bi-person-slash:before{content:""}.bi-person-up:before{content:""}.bi-scooter:before{content:""}.bi-taxi-front-fill:before{content:""}.bi-taxi-front:before{content:""}.bi-amd:before{content:""}.bi-database-add:before{content:""}.bi-database-check:before{content:""}.bi-database-dash:before{content:""}.bi-database-down:before{content:""}.bi-database-exclamation:before{content:""}.bi-database-fill-add:before{content:""}.bi-database-fill-check:before{content:""}.bi-database-fill-dash:before{content:""}.bi-database-fill-down:before{content:""}.bi-database-fill-exclamation:before{content:""}.bi-database-fill-gear:before{content:""}.bi-database-fill-lock:before{content:""}.bi-database-fill-slash:before{content:""}.bi-database-fill-up:before{content:""}.bi-database-fill-x:before{content:""}.bi-database-fill:before{content:""}.bi-database-gear:before{content:""}.bi-database-lock:before{content:""}.bi-database-slash:before{content:""}.bi-database-up:before{content:""}.bi-database-x:before{content:""}.bi-database:before{content:""}.bi-houses-fill:before{content:""}.bi-houses:before{content:""}.bi-nvidia:before{content:""}.bi-person-vcard-fill:before{content:""}.bi-person-vcard:before{content:""}.bi-sina-weibo:before{content:""}.bi-tencent-qq:before{content:""}.bi-wikipedia:before{content:""}.bi-alphabet-uppercase:before{content:""}.bi-alphabet:before{content:""}.bi-amazon:before{content:""}.bi-arrows-collapse-vertical:before{content:""}.bi-arrows-expand-vertical:before{content:""}.bi-arrows-vertical:before{content:""}.bi-arrows:before{content:""}.bi-ban-fill:before{content:""}.bi-ban:before{content:""}.bi-bing:before{content:""}.bi-cake:before{content:""}.bi-cake2:before{content:""}.bi-cookie:before{content:""}.bi-copy:before{content:""}.bi-crosshair:before{content:""}.bi-crosshair2:before{content:""}.bi-emoji-astonished-fill:before{content:""}.bi-emoji-astonished:before{content:""}.bi-emoji-grimace-fill:before{content:""}.bi-emoji-grimace:before{content:""}.bi-emoji-grin-fill:before{content:""}.bi-emoji-grin:before{content:""}.bi-emoji-surprise-fill:before{content:""}.bi-emoji-surprise:before{content:""}.bi-emoji-tear-fill:before{content:""}.bi-emoji-tear:before{content:""}.bi-envelope-arrow-down-fill:before{content:""}.bi-envelope-arrow-down:before{content:""}.bi-envelope-arrow-up-fill:before{content:""}.bi-envelope-arrow-up:before{content:""}.bi-feather:before{content:""}.bi-feather2:before{content:""}.bi-floppy-fill:before{content:""}.bi-floppy:before{content:""}.bi-floppy2-fill:before{content:""}.bi-floppy2:before{content:""}.bi-gitlab:before{content:""}.bi-highlighter:before{content:""}.bi-marker-tip:before{content:""}.bi-nvme-fill:before{content:""}.bi-nvme:before{content:""}.bi-opencollective:before{content:""}.bi-pci-card-network:before{content:""}.bi-pci-card-sound:before{content:""}.bi-radar:before{content:""}.bi-send-arrow-down-fill:before{content:""}.bi-send-arrow-down:before{content:""}.bi-send-arrow-up-fill:before{content:""}.bi-send-arrow-up:before{content:""}.bi-sim-slash-fill:before{content:""}.bi-sim-slash:before{content:""}.bi-sourceforge:before{content:""}.bi-substack:before{content:""}.bi-threads-fill:before{content:""}.bi-threads:before{content:""}.bi-transparency:before{content:""}.bi-twitter-x:before{content:""}.bi-type-h4:before{content:""}.bi-type-h5:before{content:""}.bi-type-h6:before{content:""}.bi-backpack-fill:before{content:""}.bi-backpack:before{content:""}.bi-backpack2-fill:before{content:""}.bi-backpack2:before{content:""}.bi-backpack3-fill:before{content:""}.bi-backpack3:before{content:""}.bi-backpack4-fill:before{content:""}.bi-backpack4:before{content:""}.bi-brilliance:before{content:""}.bi-cake-fill:before{content:""}.bi-cake2-fill:before{content:""}.bi-duffle-fill:before{content:""}.bi-duffle:before{content:""}.bi-exposure:before{content:""}.bi-gender-neuter:before{content:""}.bi-highlights:before{content:""}.bi-luggage-fill:before{content:""}.bi-luggage:before{content:""}.bi-mailbox-flag:before{content:""}.bi-mailbox2-flag:before{content:""}.bi-noise-reduction:before{content:""}.bi-passport-fill:before{content:""}.bi-passport:before{content:""}.bi-person-arms-up:before{content:""}.bi-person-raised-hand:before{content:""}.bi-person-standing-dress:before{content:""}.bi-person-standing:before{content:""}.bi-person-walking:before{content:""}.bi-person-wheelchair:before{content:""}.bi-shadows:before{content:""}.bi-suitcase-fill:before{content:""}.bi-suitcase-lg-fill:before{content:""}.bi-suitcase-lg:before{content:""}.bi-suitcase:before{content:"豈"}.bi-suitcase2-fill:before{content:"更"}.bi-suitcase2:before{content:"車"}.bi-vignette:before{content:"賈"}.bi-bluesky:before{content:""}.bi-tux:before{content:"滑"}.bi-beaker-fill:before{content:"串"}.bi-beaker:before{content:"句"}.bi-flask-fill:before{content:"龜"}.bi-flask-florence-fill:before{content:"龜"}.bi-flask-florence:before{content:"契"}.bi-flask:before{content:"金"}.bi-leaf-fill:before{content:"喇"}.bi-leaf:before{content:"奈"}.bi-measuring-cup-fill:before{content:"懶"}.bi-measuring-cup:before{content:"癩"}.bi-unlock2-fill:before{content:"羅"}.bi-unlock2:before{content:"蘿"}.bi-battery-low:before{content:"螺"}.bi-anthropic:before{content:"裸"}.bi-apple-music:before{content:"邏"}.bi-claude:before{content:"樂"}.bi-openai:before{content:"洛"}.bi-perplexity:before{content:"烙"}.bi-css:before{content:"珞"}.bi-javascript:before{content:"落"}.bi-typescript:before{content:"酪"}.bi-fork-knife:before{content:"駱"}.bi-globe-americas-fill:before{content:"亂"}.bi-globe-asia-australia-fill:before{content:"卵"}.bi-globe-central-south-asia-fill:before{content:"欄"}.bi-globe-europe-africa-fill:before{content:"爛"}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;src:url(/static/client/dist/assets/PlusJakartaSans-VariableFont_wght-D_DSbd_K.ttf) format("ttf")}@font-face{font-family:Plus Jakarta Sans;font-style:italic;font-weight:200 800;src:url(/static/client/dist/assets/PlusJakartaSans-Italic-VariableFont_wght-BdWtZZ8T.ttf) format("ttf")}*{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol!important}@property --brandColor1{syntax: ""; initial-value: #009dff; inherits: false;}@property --brandColor2{syntax: ""; initial-value: #F94647; inherits: false;}@property --distance1{syntax: ""; initial-value: 0%; inherits: false;}@property --degree{syntax: ""; initial-value: 234deg; inherits: false;}.btn-brand{background:linear-gradient(var(--degree),var(--brandColor1) var(--distance1),var(--brandColor2) 100%);border:0!important;transition:--brandColor1 .3s,--brandColor2 .3s!important}.btn-brand:hover{--brandColor1: rgb(0, 142, 216);--brandColor2: rgba(249, 70, 71) }::-webkit-scrollbar{display:none}.slide-right-enter-active,.slide-right-leave-active{transition:all .3s cubic-bezier(.82,.58,.17,1)}.slide-right-enter-from,.slide-right-leave-to{opacity:0}.slide-right-enter-from{transform:translate(-20px)}.slide-right-leave-to{transform:translate(20px)}.app-enter-active,.app-leave-active{transition:all .4s cubic-bezier(.82,.58,.17,1)}.app-enter-from,.app-leave-to{opacity:0;filter:blur(8px)}.app-enter-from{transform:scale(1.03)}.app-leave-to{transform:scale(.97)}.btn-outline-body{color:#000;border-color:#000!important;background-color:transparent}[data-bs-theme=dark] .btn-outline-body{color:#fff;border-color:#fff!important;background-color:transparent}.btn-body{border-color:#000!important;color:#fff!important;background-color:#000}.btn-body:hover{border-color:#373737!important;color:#fff!important;background-color:#373737!important}[data-bs-theme=dark] .btn-body{border-color:#fff!important;color:#000!important;background-color:#fff}[data-bs-theme=dark] .btn-body:hover{border-color:#e8e8e8!important;color:#000!important;background-color:#e8e8e8!important}.form-control{border-width:0}.amneziawgBg{background:#91c7c1;background:linear-gradient(90deg,#91c7c1,#6b5fa1,#e38e41)}.wireguardBg{background:#7d2020;background:linear-gradient(90deg,#7d2020,#ff3838)}.notification[data-v-3303bfcd]{width:100%;word-break:break-word}@media screen and (min-width: 576px){.notification[data-v-3303bfcd]{width:400px}}.message-move[data-v-e4fed80c],.message-enter-active[data-v-e4fed80c],.message-leave-active[data-v-e4fed80c]{transition:all .5s cubic-bezier(.82,.58,.17,1)}.message-enter-from[data-v-e4fed80c],.message-leave-to[data-v-e4fed80c]{filter:blur(2px);opacity:0}.message-enter-from[data-v-e4fed80c]{transform:translateY(-30px)}.message-leave-to[data-v-e4fed80c]{transform:translateY(30px)}.messageCentre[data-v-e4fed80c]{z-index:9999;top:1rem;right:1rem}@media screen and (max-width: 768px){.messageCentre[data-v-e4fed80c]{width:calc(100% - 2rem)}}@media screen and (max-width: 576px){#listContainer[data-v-9c24c21b]{border-radius:0!important}}.qrcodeContainer[data-v-cc8c55c7]{background-color:#00000050;-webkit-backdrop-filter:blur(8px) brightness(.8);backdrop-filter:blur(8px) brightness(.8);z-index:9999}.button-group a[data-v-5ea45ad6]:hover{background-color:#ffffff20}.dot[data-v-5ea45ad6]{width:10px;height:10px;border-radius:50px;display:inline-block;margin-left:auto!important;background-color:#6c757d}.dot.active[data-v-5ea45ad6]{background-color:#28a745!important;box-shadow:0 0 0 .2rem #28a74545}.nav-link[data-v-2372f633]{padding:1rem}@media screen and (max-width: 576px){.nav-links a span[data-v-2372f633]{display:none}} diff --git a/src/static/client/dist/assets/index-DFmEbKGG.js b/src/static/client/dist/assets/index-DFmEbKGG.js new file mode 100644 index 0000000..68bbc83 --- /dev/null +++ b/src/static/client/dist/assets/index-DFmEbKGG.js @@ -0,0 +1,41 @@ +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&s(a)}).observe(document,{childList:!0,subtree:!0});function n(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(r){if(r.ep)return;r.ep=!0;const o=n(r);fetch(r.href,o)}})();/** +* @vue/shared v3.5.16 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function hl(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const Fe={},Ks=[],an=()=>{},ab=()=>!1,Wi=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),pl=e=>e.startsWith("onUpdate:"),nt=Object.assign,ml=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},lb=Object.prototype.hasOwnProperty,Le=(e,t)=>lb.call(e,t),de=Array.isArray,Ws=e=>Vr(e)==="[object Map]",tr=e=>Vr(e)==="[object Set]",yu=e=>Vr(e)==="[object Date]",me=e=>typeof e=="function",Je=e=>typeof e=="string",un=e=>typeof e=="symbol",He=e=>e!==null&&typeof e=="object",gl=e=>(He(e)||me(e))&&me(e.then)&&me(e.catch),vd=Object.prototype.toString,Vr=e=>vd.call(e),cb=e=>Vr(e).slice(8,-1),bd=e=>Vr(e)==="[object Object]",_l=e=>Je(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,wr=hl(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Yi=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},ub=/-(\w)/g,Ut=Yi(e=>e.replace(ub,(t,n)=>n?n.toUpperCase():"")),fb=/\B([A-Z])/g,Es=Yi(e=>e.replace(fb,"-$1").toLowerCase()),zi=Yi(e=>e.charAt(0).toUpperCase()+e.slice(1)),Xo=Yi(e=>e?`on${zi(e)}`:""),Vn=(e,t)=>!Object.is(e,t),Ti=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},Di=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Ed=e=>{const t=Je(e)?Number(e):NaN;return isNaN(t)?e:t};let Eu;const Gi=()=>Eu||(Eu=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ji(e){if(de(e)){const t={};for(let n=0;n{if(n){const s=n.split(hb);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function En(e){let t="";if(Je(e))t=e;else if(de(e))for(let n=0;ngs(n,t))}const Td=e=>!!(e&&e.__v_isRef===!0),Lt=e=>Je(e)?e:e==null?"":de(e)||He(e)&&(e.toString===vd||!me(e.toString))?Td(e)?Lt(e.value):JSON.stringify(e,Ad,2):String(e),Ad=(e,t)=>Td(t)?Ad(e,t.value):Ws(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],o)=>(n[Zo(s,o)+" =>"]=r,n),{})}:tr(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Zo(n))}:un(t)?Zo(t):He(t)&&!de(t)&&!bd(t)?String(t):t,Zo=(e,t="")=>{var n;return un(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.5.16 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let dt;class Sd{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=dt,!t&&dt&&(this.index=(dt.scopes||(dt.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0&&--this._on===0&&(dt=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n0)return;if(Ar){let t=Ar;for(Ar=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Tr;){let t=Tr;for(Tr=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function $d(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Pd(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),El(s),yb(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function Ua(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Dd(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Dd(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===$r)||(e.globalVersion=$r,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Ua(e))))return;e.flags|=2;const t=e.dep,n=Ue,s=Yt;Ue=e,Yt=!0;try{$d(e);const r=e.fn(e._value);(t.version===0||Vn(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{Ue=n,Yt=s,Pd(e),e.flags&=-3}}function El(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let o=n.computed.deps;o;o=o.nextDep)El(o,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function yb(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Yt=!0;const Ld=[];function Tn(){Ld.push(Yt),Yt=!1}function An(){const e=Ld.pop();Yt=e===void 0?!0:e}function wu(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=Ue;Ue=void 0;try{t()}finally{Ue=n}}}let $r=0;class Eb{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class wl{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(t){if(!Ue||!Yt||Ue===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==Ue)n=this.activeLink=new Eb(Ue,this),Ue.deps?(n.prevDep=Ue.depsTail,Ue.depsTail.nextDep=n,Ue.depsTail=n):Ue.deps=Ue.depsTail=n,Id(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=Ue.depsTail,n.nextDep=void 0,Ue.depsTail.nextDep=n,Ue.depsTail=n,Ue.deps===n&&(Ue.deps=s)}return n}trigger(t){this.version++,$r++,this.notify(t)}notify(t){bl();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{yl()}}}function Id(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)Id(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Li=new WeakMap,hs=Symbol(""),ja=Symbol(""),Pr=Symbol("");function ht(e,t,n){if(Yt&&Ue){let s=Li.get(e);s||Li.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new wl),r.map=s,r.key=n),r.track()}}function vn(e,t,n,s,r,o){const a=Li.get(e);if(!a){$r++;return}const l=u=>{u&&u.trigger()};if(bl(),t==="clear")a.forEach(l);else{const u=de(e),f=u&&_l(n);if(u&&n==="length"){const h=Number(s);a.forEach((p,g)=>{(g==="length"||g===Pr||!un(g)&&g>=h)&&l(p)})}else switch((n!==void 0||a.has(void 0))&&l(a.get(n)),f&&l(a.get(Pr)),t){case"add":u?f&&l(a.get("length")):(l(a.get(hs)),Ws(e)&&l(a.get(ja)));break;case"delete":u||(l(a.get(hs)),Ws(e)&&l(a.get(ja)));break;case"set":Ws(e)&&l(a.get(hs));break}}yl()}function wb(e,t){const n=Li.get(e);return n&&n.get(t)}function Hs(e){const t=Oe(e);return t===e?t:(ht(t,"iterate",Pr),Ht(e)?t:t.map(lt))}function Qi(e){return ht(e=Oe(e),"iterate",Pr),e}const Tb={__proto__:null,[Symbol.iterator](){return ta(this,Symbol.iterator,lt)},concat(...e){return Hs(this).concat(...e.map(t=>de(t)?Hs(t):t))},entries(){return ta(this,"entries",e=>(e[1]=lt(e[1]),e))},every(e,t){return mn(this,"every",e,t,void 0,arguments)},filter(e,t){return mn(this,"filter",e,t,n=>n.map(lt),arguments)},find(e,t){return mn(this,"find",e,t,lt,arguments)},findIndex(e,t){return mn(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return mn(this,"findLast",e,t,lt,arguments)},findLastIndex(e,t){return mn(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return mn(this,"forEach",e,t,void 0,arguments)},includes(...e){return na(this,"includes",e)},indexOf(...e){return na(this,"indexOf",e)},join(e){return Hs(this).join(e)},lastIndexOf(...e){return na(this,"lastIndexOf",e)},map(e,t){return mn(this,"map",e,t,void 0,arguments)},pop(){return mr(this,"pop")},push(...e){return mr(this,"push",e)},reduce(e,...t){return Tu(this,"reduce",e,t)},reduceRight(e,...t){return Tu(this,"reduceRight",e,t)},shift(){return mr(this,"shift")},some(e,t){return mn(this,"some",e,t,void 0,arguments)},splice(...e){return mr(this,"splice",e)},toReversed(){return Hs(this).toReversed()},toSorted(e){return Hs(this).toSorted(e)},toSpliced(...e){return Hs(this).toSpliced(...e)},unshift(...e){return mr(this,"unshift",e)},values(){return ta(this,"values",lt)}};function ta(e,t,n){const s=Qi(e),r=s[t]();return s!==e&&!Ht(e)&&(r._next=r.next,r.next=()=>{const o=r._next();return o.value&&(o.value=n(o.value)),o}),r}const Ab=Array.prototype;function mn(e,t,n,s,r,o){const a=Qi(e),l=a!==e&&!Ht(e),u=a[t];if(u!==Ab[t]){const p=u.apply(e,o);return l?lt(p):p}let f=n;a!==e&&(l?f=function(p,g){return n.call(this,lt(p),g,e)}:n.length>2&&(f=function(p,g){return n.call(this,p,g,e)}));const h=u.call(a,f,s);return l&&r?r(h):h}function Tu(e,t,n,s){const r=Qi(e);let o=n;return r!==e&&(Ht(e)?n.length>3&&(o=function(a,l,u){return n.call(this,a,l,u,e)}):o=function(a,l,u){return n.call(this,a,lt(l),u,e)}),r[t](o,...s)}function na(e,t,n){const s=Oe(e);ht(s,"iterate",Pr);const r=s[t](...n);return(r===-1||r===!1)&&Sl(n[0])?(n[0]=Oe(n[0]),s[t](...n)):r}function mr(e,t,n=[]){Tn(),bl();const s=Oe(e)[t].apply(e,n);return yl(),An(),s}const Sb=hl("__proto__,__v_isRef,__isVue"),Md=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(un));function Cb(e){un(e)||(e=String(e));const t=Oe(this);return ht(t,"has",e),t.hasOwnProperty(e)}class kd{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return o;if(n==="__v_raw")return s===(r?o?Mb:Vd:o?Hd:Fd).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const a=de(t);if(!r){let u;if(a&&(u=Tb[n]))return u;if(n==="hasOwnProperty")return Cb}const l=Reflect.get(t,n,Ze(t)?t:s);return(un(n)?Md.has(n):Sb(n))||(r||ht(t,"get",n),o)?l:Ze(l)?a&&_l(n)?l:l.value:He(l)?r?jd(l):Sn(l):l}}class Bd extends kd{constructor(t=!1){super(!1,t)}set(t,n,s,r){let o=t[n];if(!this._isShallow){const u=jn(o);if(!Ht(s)&&!jn(s)&&(o=Oe(o),s=Oe(s)),!de(t)&&Ze(o)&&!Ze(s))return u?!1:(o.value=s,!0)}const a=de(t)&&_l(n)?Number(n)e,_i=e=>Reflect.getPrototypeOf(e);function $b(e,t,n){return function(...s){const r=this.__v_raw,o=Oe(r),a=Ws(o),l=e==="entries"||e===Symbol.iterator&&a,u=e==="keys"&&a,f=r[e](...s),h=n?qa:t?Ii:lt;return!t&&ht(o,"iterate",u?ja:hs),{next(){const{value:p,done:g}=f.next();return g?{value:p,done:g}:{value:l?[h(p[0]),h(p[1])]:h(p),done:g}},[Symbol.iterator](){return this}}}}function vi(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Pb(e,t){const n={get(r){const o=this.__v_raw,a=Oe(o),l=Oe(r);e||(Vn(r,l)&&ht(a,"get",r),ht(a,"get",l));const{has:u}=_i(a),f=t?qa:e?Ii:lt;if(u.call(a,r))return f(o.get(r));if(u.call(a,l))return f(o.get(l));o!==a&&o.get(r)},get size(){const r=this.__v_raw;return!e&&ht(Oe(r),"iterate",hs),Reflect.get(r,"size",r)},has(r){const o=this.__v_raw,a=Oe(o),l=Oe(r);return e||(Vn(r,l)&&ht(a,"has",r),ht(a,"has",l)),r===l?o.has(r):o.has(r)||o.has(l)},forEach(r,o){const a=this,l=a.__v_raw,u=Oe(l),f=t?qa:e?Ii:lt;return!e&&ht(u,"iterate",hs),l.forEach((h,p)=>r.call(o,f(h),f(p),a))}};return nt(n,e?{add:vi("add"),set:vi("set"),delete:vi("delete"),clear:vi("clear")}:{add(r){!t&&!Ht(r)&&!jn(r)&&(r=Oe(r));const o=Oe(this);return _i(o).has.call(o,r)||(o.add(r),vn(o,"add",r,r)),this},set(r,o){!t&&!Ht(o)&&!jn(o)&&(o=Oe(o));const a=Oe(this),{has:l,get:u}=_i(a);let f=l.call(a,r);f||(r=Oe(r),f=l.call(a,r));const h=u.call(a,r);return a.set(r,o),f?Vn(o,h)&&vn(a,"set",r,o):vn(a,"add",r,o),this},delete(r){const o=Oe(this),{has:a,get:l}=_i(o);let u=a.call(o,r);u||(r=Oe(r),u=a.call(o,r)),l&&l.call(o,r);const f=o.delete(r);return u&&vn(o,"delete",r,void 0),f},clear(){const r=Oe(this),o=r.size!==0,a=r.clear();return o&&vn(r,"clear",void 0,void 0),a}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=$b(r,e,t)}),n}function Tl(e,t){const n=Pb(e,t);return(s,r,o)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(Le(n,r)&&r in s?n:s,r,o)}const Db={get:Tl(!1,!1)},Lb={get:Tl(!1,!0)},Ib={get:Tl(!0,!1)};const Fd=new WeakMap,Hd=new WeakMap,Vd=new WeakMap,Mb=new WeakMap;function kb(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Bb(e){return e.__v_skip||!Object.isExtensible(e)?0:kb(cb(e))}function Sn(e){return jn(e)?e:Al(e,!1,Rb,Db,Fd)}function Ud(e){return Al(e,!1,xb,Lb,Hd)}function jd(e){return Al(e,!0,Nb,Ib,Vd)}function Al(e,t,n,s,r){if(!He(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=Bb(e);if(o===0)return e;const a=r.get(e);if(a)return a;const l=new Proxy(e,o===2?s:n);return r.set(e,l),l}function Un(e){return jn(e)?Un(e.__v_raw):!!(e&&e.__v_isReactive)}function jn(e){return!!(e&&e.__v_isReadonly)}function Ht(e){return!!(e&&e.__v_isShallow)}function Sl(e){return e?!!e.__v_raw:!1}function Oe(e){const t=e&&e.__v_raw;return t?Oe(t):e}function Cl(e){return!Le(e,"__v_skip")&&Object.isExtensible(e)&&yd(e,"__v_skip",!0),e}const lt=e=>He(e)?Sn(e):e,Ii=e=>He(e)?jd(e):e;function Ze(e){return e?e.__v_isRef===!0:!1}function et(e){return qd(e,!1)}function Fb(e){return qd(e,!0)}function qd(e,t){return Ze(e)?e:new Hb(e,t)}class Hb{constructor(t,n){this.dep=new wl,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:Oe(t),this._value=n?t:lt(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||Ht(t)||jn(t);t=s?t:Oe(t),Vn(t,n)&&(this._rawValue=t,this._value=s?t:lt(t),this.dep.trigger())}}function ln(e){return Ze(e)?e.value:e}const Vb={get:(e,t,n)=>t==="__v_raw"?e:ln(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return Ze(r)&&!Ze(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function Kd(e){return Un(e)?e:new Proxy(e,Vb)}function Ub(e){const t=de(e)?new Array(e.length):{};for(const n in e)t[n]=qb(e,n);return t}class jb{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return wb(Oe(this._object),this._key)}}function qb(e,t,n){const s=e[t];return Ze(s)?s:new jb(e,t,n)}class Kb{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new wl(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=$r-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&Ue!==this)return xd(this,!0),!0}get value(){const t=this.dep.track();return Dd(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function Wb(e,t,n=!1){let s,r;return me(e)?s=e:(s=e.get,r=e.set),new Kb(s,r,n)}const bi={},Mi=new WeakMap;let fs;function Yb(e,t=!1,n=fs){if(n){let s=Mi.get(n);s||Mi.set(n,s=[]),s.push(e)}}function zb(e,t,n=Fe){const{immediate:s,deep:r,once:o,scheduler:a,augmentJob:l,call:u}=n,f=U=>r?U:Ht(U)||r===!1||r===0?bn(U,1):bn(U);let h,p,g,_,E=!1,A=!1;if(Ze(e)?(p=()=>e.value,E=Ht(e)):Un(e)?(p=()=>f(e),E=!0):de(e)?(A=!0,E=e.some(U=>Un(U)||Ht(U)),p=()=>e.map(U=>{if(Ze(U))return U.value;if(Un(U))return f(U);if(me(U))return u?u(U,2):U()})):me(e)?t?p=u?()=>u(e,2):e:p=()=>{if(g){Tn();try{g()}finally{An()}}const U=fs;fs=h;try{return u?u(e,3,[_]):e(_)}finally{fs=U}}:p=an,t&&r){const U=p,q=r===!0?1/0:r;p=()=>bn(U(),q)}const H=Od(),I=()=>{h.stop(),H&&H.active&&ml(H.effects,h)};if(o&&t){const U=t;t=(...q)=>{U(...q),I()}}let F=A?new Array(e.length).fill(bi):bi;const k=U=>{if(!(!(h.flags&1)||!h.dirty&&!U))if(t){const q=h.run();if(r||E||(A?q.some((O,R)=>Vn(O,F[R])):Vn(q,F))){g&&g();const O=fs;fs=h;try{const R=[q,F===bi?void 0:A&&F[0]===bi?[]:F,_];F=q,u?u(t,3,R):t(...R)}finally{fs=O}}}else h.run()};return l&&l(k),h=new Rd(p),h.scheduler=a?()=>a(k,!1):k,_=U=>Yb(U,!1,h),g=h.onStop=()=>{const U=Mi.get(h);if(U){if(u)u(U,4);else for(const q of U)q();Mi.delete(h)}},t?s?k(!0):F=h.run():a?a(k.bind(null,!0),!0):h.run(),I.pause=h.pause.bind(h),I.resume=h.resume.bind(h),I.stop=I,I}function bn(e,t=1/0,n){if(t<=0||!He(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,Ze(e))bn(e.value,t,n);else if(de(e))for(let s=0;s{bn(s,t,n)});else if(bd(e)){for(const s in e)bn(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&bn(e[s],t,n)}return e}/** +* @vue/runtime-core v3.5.16 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function Ur(e,t,n,s){try{return s?e(...s):e()}catch(r){jr(r,t,n)}}function zt(e,t,n,s){if(me(e)){const r=Ur(e,t,n,s);return r&&gl(r)&&r.catch(o=>{jr(o,t,n)}),r}if(de(e)){const r=[];for(let o=0;o>>1,r=Et[s],o=Dr(r);o=Dr(n)?Et.push(e):Et.splice(Jb(t),0,e),e.flags|=1,Yd()}}function Yd(){ki||(ki=Wd.then(Gd))}function Ka(e){de(e)?Ys.push(...e):kn&&e.id===-1?kn.splice(js+1,0,e):e.flags&1||(Ys.push(e),e.flags|=1),Yd()}function Au(e,t,n=rn+1){for(;nDr(n)-Dr(s));if(Ys.length=0,kn){kn.push(...t);return}for(kn=t,js=0;jse.id==null?e.flags&2?-1:1/0:e.id;function Gd(e){try{for(rn=0;rn{s._d&&Mu(-1);const o=Bi(t);let a;try{a=e(...r)}finally{Bi(o),s._d&&Mu(1)}return a};return s._n=!0,s._c=!0,s._d=!0,s}function cn(e,t){if(Tt===null)return e;const n=ro(Tt),s=e.dirs||(e.dirs=[]);for(let r=0;re.__isTeleport,Bn=Symbol("_leaveCb"),yi=Symbol("_enterCb");function Xd(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return ws(()=>{e.isMounted=!0}),ch(()=>{e.isUnmounting=!0}),e}const Ft=[Function,Array],Zd={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Ft,onEnter:Ft,onAfterEnter:Ft,onEnterCancelled:Ft,onBeforeLeave:Ft,onLeave:Ft,onAfterLeave:Ft,onLeaveCancelled:Ft,onBeforeAppear:Ft,onAppear:Ft,onAfterAppear:Ft,onAppearCancelled:Ft},eh=e=>{const t=e.subTree;return t.component?eh(t.component):t},Xb={name:"BaseTransition",props:Zd,setup(e,{slots:t}){const n=Il(),s=Xd();return()=>{const r=t.default&&Rl(t.default(),!0);if(!r||!r.length)return;const o=th(r),a=Oe(e),{mode:l}=a;if(s.isLeaving)return sa(o);const u=Su(o);if(!u)return sa(o);let f=Lr(u,a,s,n,p=>f=p);u.type!==ct&&_s(u,f);let h=n.subTree&&Su(n.subTree);if(h&&h.type!==ct&&!on(u,h)&&eh(n).type!==ct){let p=Lr(h,a,s,n);if(_s(h,p),l==="out-in"&&u.type!==ct)return s.isLeaving=!0,p.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete p.afterLeave,h=void 0},sa(o);l==="in-out"&&u.type!==ct?p.delayLeave=(g,_,E)=>{const A=nh(s,h);A[String(h.key)]=h,g[Bn]=()=>{_(),g[Bn]=void 0,delete f.delayedLeave,h=void 0},f.delayedLeave=()=>{E(),delete f.delayedLeave,h=void 0}}:h=void 0}else h&&(h=void 0);return o}}};function th(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==ct){t=n;break}}return t}const Zb=Xb;function nh(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function Lr(e,t,n,s,r){const{appear:o,mode:a,persisted:l=!1,onBeforeEnter:u,onEnter:f,onAfterEnter:h,onEnterCancelled:p,onBeforeLeave:g,onLeave:_,onAfterLeave:E,onLeaveCancelled:A,onBeforeAppear:H,onAppear:I,onAfterAppear:F,onAppearCancelled:k}=t,U=String(e.key),q=nh(n,e),O=(S,D)=>{S&&zt(S,s,9,D)},R=(S,D)=>{const M=D[1];O(S,D),de(S)?S.every(P=>P.length<=1)&&M():S.length<=1&&M()},w={mode:a,persisted:l,beforeEnter(S){let D=u;if(!n.isMounted)if(o)D=H||u;else return;S[Bn]&&S[Bn](!0);const M=q[U];M&&on(e,M)&&M.el[Bn]&&M.el[Bn](),O(D,[S])},enter(S){let D=f,M=h,P=p;if(!n.isMounted)if(o)D=I||f,M=F||h,P=k||p;else return;let z=!1;const j=S[yi]=X=>{z||(z=!0,X?O(P,[S]):O(M,[S]),w.delayedLeave&&w.delayedLeave(),S[yi]=void 0)};D?R(D,[S,j]):j()},leave(S,D){const M=String(e.key);if(S[yi]&&S[yi](!0),n.isUnmounting)return D();O(g,[S]);let P=!1;const z=S[Bn]=j=>{P||(P=!0,D(),j?O(A,[S]):O(E,[S]),S[Bn]=void 0,q[M]===e&&delete q[M])};q[M]=e,_?R(_,[S,z]):z()},clone(S){const D=Lr(S,t,n,s,r);return r&&r(D),D}};return w}function sa(e){if(Zi(e))return e=qn(e),e.children=null,e}function Su(e){if(!Zi(e))return Qd(e.type)&&e.children?th(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&me(n.default))return n.default()}}function _s(e,t){e.shapeFlag&6&&e.component?(e.transition=t,_s(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Rl(e,t=!1,n){let s=[],r=0;for(let o=0;o1)for(let o=0;oFi(E,t&&(de(t)?t[A]:t),n,s,r));return}if(Sr(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&Fi(e,t,n,s.component.subTree);return}const o=s.shapeFlag&4?ro(s.component):s.el,a=r?null:o,{i:l,r:u}=e,f=t&&t.r,h=l.refs===Fe?l.refs={}:l.refs,p=l.setupState,g=Oe(p),_=p===Fe?()=>!1:E=>Le(g,E);if(f!=null&&f!==u&&(Je(f)?(h[f]=null,_(f)&&(p[f]=null)):Ze(f)&&(f.value=null)),me(u))Ur(u,l,12,[a,h]);else{const E=Je(u),A=Ze(u);if(E||A){const H=()=>{if(e.f){const I=E?_(u)?p[u]:h[u]:u.value;r?de(I)&&ml(I,o):de(I)?I.includes(o)||I.push(o):E?(h[u]=[o],_(u)&&(p[u]=h[u])):(u.value=[o],e.k&&(h[e.k]=u.value))}else E?(h[u]=a,_(u)&&(p[u]=a)):A&&(u.value=a,e.k&&(h[e.k]=a))};a?(H.id=-1,Dt(H,n)):H()}}}Gi().requestIdleCallback;Gi().cancelIdleCallback;const Sr=e=>!!e.type.__asyncLoader,Zi=e=>e.type.__isKeepAlive;function ih(e,t){ah(e,"a",t)}function oh(e,t){ah(e,"da",t)}function ah(e,t,n=rt){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(eo(t,s,n),n){let r=n.parent;for(;r&&r.parent;)Zi(r.parent.vnode)&&ey(s,t,n,r),r=r.parent}}function ey(e,t,n,s){const r=eo(t,e,s,!0);Nl(()=>{ml(s[t],r)},n)}function eo(e,t,n=rt,s=!1){if(n){const r=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...a)=>{Tn();const l=bs(n),u=zt(t,n,e,a);return l(),An(),u});return s?r.unshift(o):r.push(o),o}}const Cn=e=>(t,n=rt)=>{(!kr||e==="sp")&&eo(e,(...s)=>t(...s),n)},ty=Cn("bm"),ws=Cn("m"),ny=Cn("bu"),lh=Cn("u"),ch=Cn("bum"),Nl=Cn("um"),sy=Cn("sp"),ry=Cn("rtg"),iy=Cn("rtc");function oy(e,t=rt){eo("ec",e,t)}const uh="components";function qr(e,t){return dh(uh,e,!0,t)||e}const fh=Symbol.for("v-ndc");function ay(e){return Je(e)?dh(uh,e,!1)||e:e||fh}function dh(e,t,n=!0,s=!1){const r=Tt||rt;if(r){const o=r.type;{const l=Zy(o,!1);if(l&&(l===t||l===Ut(t)||l===zi(Ut(t))))return o}const a=Cu(r[e]||o[e],t)||Cu(r.appContext[e],t);return!a&&s?o:a}}function Cu(e,t){return e&&(e[t]||e[Ut(t)]||e[zi(Ut(t))])}function to(e,t,n,s){let r;const o=n,a=de(e);if(a||Je(e)){const l=a&&Un(e);let u=!1,f=!1;l&&(u=!Ht(e),f=jn(e),e=Qi(e)),r=new Array(e.length);for(let h=0,p=e.length;ht(l,u,void 0,o));else{const l=Object.keys(e);r=new Array(l.length);for(let u=0,f=l.length;ue?Ih(e)?ro(e):Wa(e.parent):null,Cr=nt(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Wa(e.parent),$root:e=>Wa(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>ph(e),$forceUpdate:e=>e.f||(e.f=()=>{Ol(e.update)}),$nextTick:e=>e.n||(e.n=Xi.bind(e.proxy)),$watch:e=>Ny.bind(e)}),ra=(e,t)=>e!==Fe&&!e.__isScriptSetup&&Le(e,t),ly={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:o,accessCache:a,type:l,appContext:u}=e;let f;if(t[0]!=="$"){const _=a[t];if(_!==void 0)switch(_){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return o[t]}else{if(ra(s,t))return a[t]=1,s[t];if(r!==Fe&&Le(r,t))return a[t]=2,r[t];if((f=e.propsOptions[0])&&Le(f,t))return a[t]=3,o[t];if(n!==Fe&&Le(n,t))return a[t]=4,n[t];Ya&&(a[t]=0)}}const h=Cr[t];let p,g;if(h)return t==="$attrs"&&ht(e.attrs,"get",""),h(e);if((p=l.__cssModules)&&(p=p[t]))return p;if(n!==Fe&&Le(n,t))return a[t]=4,n[t];if(g=u.config.globalProperties,Le(g,t))return g[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:o}=e;return ra(r,t)?(r[t]=n,!0):s!==Fe&&Le(s,t)?(s[t]=n,!0):Le(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,propsOptions:o}},a){let l;return!!n[a]||e!==Fe&&Le(e,a)||ra(t,a)||(l=o[0])&&Le(l,a)||Le(s,a)||Le(Cr,a)||Le(r.config.globalProperties,a)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:Le(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Ou(e){return de(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function xl(e){const t=Il();let n=e();return Xa(),gl(n)&&(n=n.catch(s=>{throw bs(t),s})),[n,()=>bs(t)]}let Ya=!0;function cy(e){const t=ph(e),n=e.proxy,s=e.ctx;Ya=!1,t.beforeCreate&&Ru(t.beforeCreate,e,"bc");const{data:r,computed:o,methods:a,watch:l,provide:u,inject:f,created:h,beforeMount:p,mounted:g,beforeUpdate:_,updated:E,activated:A,deactivated:H,beforeDestroy:I,beforeUnmount:F,destroyed:k,unmounted:U,render:q,renderTracked:O,renderTriggered:R,errorCaptured:w,serverPrefetch:S,expose:D,inheritAttrs:M,components:P,directives:z,filters:j}=t;if(f&&uy(f,s,null),a)for(const Q in a){const J=a[Q];me(J)&&(s[Q]=J.bind(n))}if(r){const Q=r.call(n,n);He(Q)&&(e.data=Sn(Q))}if(Ya=!0,o)for(const Q in o){const J=o[Q],ce=me(J)?J.bind(n,n):me(J.get)?J.get.bind(n,n):an,ue=!me(J)&&me(J.set)?J.set.bind(n):an,ge=ze({get:ce,set:ue});Object.defineProperty(s,Q,{enumerable:!0,configurable:!0,get:()=>ge.value,set:be=>ge.value=be})}if(l)for(const Q in l)hh(l[Q],s,n,Q);if(u){const Q=me(u)?u.call(n):u;Reflect.ownKeys(Q).forEach(J=>{Ai(J,Q[J])})}h&&Ru(h,e,"c");function Y(Q,J){de(J)?J.forEach(ce=>Q(ce.bind(n))):J&&Q(J.bind(n))}if(Y(ty,p),Y(ws,g),Y(ny,_),Y(lh,E),Y(ih,A),Y(oh,H),Y(oy,w),Y(iy,O),Y(ry,R),Y(ch,F),Y(Nl,U),Y(sy,S),de(D))if(D.length){const Q=e.exposed||(e.exposed={});D.forEach(J=>{Object.defineProperty(Q,J,{get:()=>n[J],set:ce=>n[J]=ce})})}else e.exposed||(e.exposed={});q&&e.render===an&&(e.render=q),M!=null&&(e.inheritAttrs=M),P&&(e.components=P),z&&(e.directives=z),S&&rh(e)}function uy(e,t,n=an){de(e)&&(e=za(e));for(const s in e){const r=e[s];let o;He(r)?"default"in r?o=It(r.from||s,r.default,!0):o=It(r.from||s):o=It(r),Ze(o)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>o.value,set:a=>o.value=a}):t[s]=o}}function Ru(e,t,n){zt(de(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function hh(e,t,n,s){let r=s.includes(".")?Oh(n,s):()=>n[s];if(Je(e)){const o=t[e];me(o)&&zs(r,o)}else if(me(e))zs(r,e.bind(n));else if(He(e))if(de(e))e.forEach(o=>hh(o,t,n,s));else{const o=me(e.handler)?e.handler.bind(n):t[e.handler];me(o)&&zs(r,o,e)}}function ph(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:o,config:{optionMergeStrategies:a}}=e.appContext,l=o.get(t);let u;return l?u=l:!r.length&&!n&&!s?u=t:(u={},r.length&&r.forEach(f=>Hi(u,f,a,!0)),Hi(u,t,a)),He(t)&&o.set(t,u),u}function Hi(e,t,n,s=!1){const{mixins:r,extends:o}=t;o&&Hi(e,o,n,!0),r&&r.forEach(a=>Hi(e,a,n,!0));for(const a in t)if(!(s&&a==="expose")){const l=fy[a]||n&&n[a];e[a]=l?l(e[a],t[a]):t[a]}return e}const fy={data:Nu,props:xu,emits:xu,methods:yr,computed:yr,beforeCreate:yt,created:yt,beforeMount:yt,mounted:yt,beforeUpdate:yt,updated:yt,beforeDestroy:yt,beforeUnmount:yt,destroyed:yt,unmounted:yt,activated:yt,deactivated:yt,errorCaptured:yt,serverPrefetch:yt,components:yr,directives:yr,watch:hy,provide:Nu,inject:dy};function Nu(e,t){return t?e?function(){return nt(me(e)?e.call(this,this):e,me(t)?t.call(this,this):t)}:t:e}function dy(e,t){return yr(za(e),za(t))}function za(e){if(de(e)){const t={};for(let n=0;n1)return n&&me(t)?t.call(s&&s.proxy):t}}function gy(){return!!(rt||Tt||ps)}const gh={},_h=()=>Object.create(gh),vh=e=>Object.getPrototypeOf(e)===gh;function _y(e,t,n,s=!1){const r={},o=_h();e.propsDefaults=Object.create(null),bh(e,t,r,o);for(const a in e.propsOptions[0])a in r||(r[a]=void 0);n?e.props=s?r:Ud(r):e.type.props?e.props=r:e.props=o,e.attrs=o}function vy(e,t,n,s){const{props:r,attrs:o,vnode:{patchFlag:a}}=e,l=Oe(r),[u]=e.propsOptions;let f=!1;if((s||a>0)&&!(a&16)){if(a&8){const h=e.vnode.dynamicProps;for(let p=0;p{u=!0;const[g,_]=yh(p,t,!0);nt(a,g),_&&l.push(..._)};!n&&t.mixins.length&&t.mixins.forEach(h),e.extends&&h(e.extends),e.mixins&&e.mixins.forEach(h)}if(!o&&!u)return He(e)&&s.set(e,Ks),Ks;if(de(o))for(let h=0;he[0]==="_"||e==="$stable",Pl=e=>de(e)?e.map(Wt):[Wt(e)],yy=(e,t,n)=>{if(t._n)return t;const s=St((...r)=>Pl(t(...r)),n);return s._c=!1,s},Eh=(e,t,n)=>{const s=e._ctx;for(const r in e){if($l(r))continue;const o=e[r];if(me(o))t[r]=yy(r,o,s);else if(o!=null){const a=Pl(o);t[r]=()=>a}}},wh=(e,t)=>{const n=Pl(t);e.slots.default=()=>n},Th=(e,t,n)=>{for(const s in t)(n||!$l(s))&&(e[s]=t[s])},Ey=(e,t,n)=>{const s=e.slots=_h();if(e.vnode.shapeFlag&32){const r=t._;r?(Th(s,t,n),n&&yd(s,"_",r,!0)):Eh(t,s)}else t&&wh(e,t)},wy=(e,t,n)=>{const{vnode:s,slots:r}=e;let o=!0,a=Fe;if(s.shapeFlag&32){const l=t._;l?n&&l===1?o=!1:Th(r,t,n):(o=!t.$stable,Eh(t,r)),a=t}else t&&(wh(e,t),a={default:1});if(o)for(const l in r)!$l(l)&&a[l]==null&&delete r[l]},Dt=Vy;function Ty(e){return Ay(e)}function Ay(e,t){const n=Gi();n.__VUE__=!0;const{insert:s,remove:r,patchProp:o,createElement:a,createText:l,createComment:u,setText:f,setElementText:h,parentNode:p,nextSibling:g,setScopeId:_=an,insertStaticContent:E}=e,A=(v,b,C,K=null,G=null,N=null,oe=void 0,re=null,se=!!b.dynamicChildren)=>{if(v===b)return;v&&!on(v,b)&&(K=V(v),be(v,G,N,!0),v=null),b.patchFlag===-2&&(se=!1,b.dynamicChildren=null);const{type:Z,ref:he,shapeFlag:ae}=b;switch(Z){case so:H(v,b,C,K);break;case ct:I(v,b,C,K);break;case oa:v==null&&F(b,C,K,oe);break;case wt:P(v,b,C,K,G,N,oe,re,se);break;default:ae&1?q(v,b,C,K,G,N,oe,re,se):ae&6?z(v,b,C,K,G,N,oe,re,se):(ae&64||ae&128)&&Z.process(v,b,C,K,G,N,oe,re,se,ie)}he!=null&&G&&Fi(he,v&&v.ref,N,b||v,!b)},H=(v,b,C,K)=>{if(v==null)s(b.el=l(b.children),C,K);else{const G=b.el=v.el;b.children!==v.children&&f(G,b.children)}},I=(v,b,C,K)=>{v==null?s(b.el=u(b.children||""),C,K):b.el=v.el},F=(v,b,C,K)=>{[v.el,v.anchor]=E(v.children,b,C,K,v.el,v.anchor)},k=({el:v,anchor:b},C,K)=>{let G;for(;v&&v!==b;)G=g(v),s(v,C,K),v=G;s(b,C,K)},U=({el:v,anchor:b})=>{let C;for(;v&&v!==b;)C=g(v),r(v),v=C;r(b)},q=(v,b,C,K,G,N,oe,re,se)=>{b.type==="svg"?oe="svg":b.type==="math"&&(oe="mathml"),v==null?O(b,C,K,G,N,oe,re,se):S(v,b,G,N,oe,re,se)},O=(v,b,C,K,G,N,oe,re)=>{let se,Z;const{props:he,shapeFlag:ae,transition:fe,dirs:pe}=v;if(se=v.el=a(v.type,N,he&&he.is,he),ae&8?h(se,v.children):ae&16&&w(v.children,se,null,K,G,ia(v,N),oe,re),pe&&ls(v,null,K,"created"),R(se,v,v.scopeId,oe,K),he){for(const Me in he)Me!=="value"&&!wr(Me)&&o(se,Me,null,he[Me],N,K);"value"in he&&o(se,"value",null,he.value,N),(Z=he.onVnodeBeforeMount)&&en(Z,K,v)}pe&&ls(v,null,K,"beforeMount");const we=Sy(G,fe);we&&fe.beforeEnter(se),s(se,b,C),((Z=he&&he.onVnodeMounted)||we||pe)&&Dt(()=>{Z&&en(Z,K,v),we&&fe.enter(se),pe&&ls(v,null,K,"mounted")},G)},R=(v,b,C,K,G)=>{if(C&&_(v,C),K)for(let N=0;N{for(let Z=se;Z{const re=b.el=v.el;let{patchFlag:se,dynamicChildren:Z,dirs:he}=b;se|=v.patchFlag&16;const ae=v.props||Fe,fe=b.props||Fe;let pe;if(C&&cs(C,!1),(pe=fe.onVnodeBeforeUpdate)&&en(pe,C,b,v),he&&ls(b,v,C,"beforeUpdate"),C&&cs(C,!0),(ae.innerHTML&&fe.innerHTML==null||ae.textContent&&fe.textContent==null)&&h(re,""),Z?D(v.dynamicChildren,Z,re,C,K,ia(b,G),N):oe||J(v,b,re,null,C,K,ia(b,G),N,!1),se>0){if(se&16)M(re,ae,fe,C,G);else if(se&2&&ae.class!==fe.class&&o(re,"class",null,fe.class,G),se&4&&o(re,"style",ae.style,fe.style,G),se&8){const we=b.dynamicProps;for(let Me=0;Me{pe&&en(pe,C,b,v),he&&ls(b,v,C,"updated")},K)},D=(v,b,C,K,G,N,oe)=>{for(let re=0;re{if(b!==C){if(b!==Fe)for(const N in b)!wr(N)&&!(N in C)&&o(v,N,b[N],null,G,K);for(const N in C){if(wr(N))continue;const oe=C[N],re=b[N];oe!==re&&N!=="value"&&o(v,N,re,oe,G,K)}"value"in C&&o(v,"value",b.value,C.value,G)}},P=(v,b,C,K,G,N,oe,re,se)=>{const Z=b.el=v?v.el:l(""),he=b.anchor=v?v.anchor:l("");let{patchFlag:ae,dynamicChildren:fe,slotScopeIds:pe}=b;pe&&(re=re?re.concat(pe):pe),v==null?(s(Z,C,K),s(he,C,K),w(b.children||[],C,he,G,N,oe,re,se)):ae>0&&ae&64&&fe&&v.dynamicChildren?(D(v.dynamicChildren,fe,C,G,N,oe,re),(b.key!=null||G&&b===G.subTree)&&Ah(v,b,!0)):J(v,b,C,he,G,N,oe,re,se)},z=(v,b,C,K,G,N,oe,re,se)=>{b.slotScopeIds=re,v==null?b.shapeFlag&512?G.ctx.activate(b,C,K,oe,se):j(b,C,K,G,N,oe,se):X(v,b,se)},j=(v,b,C,K,G,N,oe)=>{const re=v.component=zy(v,K,G);if(Zi(v)&&(re.ctx.renderer=ie),Gy(re,!1,oe),re.asyncDep){if(G&&G.registerDep(re,Y,oe),!v.el){const se=re.subTree=$e(ct);I(null,se,b,C)}}else Y(re,v,b,C,G,N,oe)},X=(v,b,C)=>{const K=b.component=v.component;if(Iy(v,b,C))if(K.asyncDep&&!K.asyncResolved){Q(K,b,C);return}else K.next=b,K.update();else b.el=v.el,K.vnode=b},Y=(v,b,C,K,G,N,oe)=>{const re=()=>{if(v.isMounted){let{next:ae,bu:fe,u:pe,parent:we,vnode:Me}=v;{const Rt=Sh(v);if(Rt){ae&&(ae.el=Me.el,Q(v,ae,oe)),Rt.asyncDep.then(()=>{v.isUnmounted||re()});return}}let Pe=ae,mt;cs(v,!1),ae?(ae.el=Me.el,Q(v,ae,oe)):ae=Me,fe&&Ti(fe),(mt=ae.props&&ae.props.onVnodeBeforeUpdate)&&en(mt,we,ae,Me),cs(v,!0);const ut=Du(v),Mt=v.subTree;v.subTree=ut,A(Mt,ut,p(Mt.el),V(Mt),v,G,N),ae.el=ut.el,Pe===null&&Dl(v,ut.el),pe&&Dt(pe,G),(mt=ae.props&&ae.props.onVnodeUpdated)&&Dt(()=>en(mt,we,ae,Me),G)}else{let ae;const{el:fe,props:pe}=b,{bm:we,m:Me,parent:Pe,root:mt,type:ut}=v,Mt=Sr(b);cs(v,!1),we&&Ti(we),!Mt&&(ae=pe&&pe.onVnodeBeforeMount)&&en(ae,Pe,b),cs(v,!0);{mt.ce&&mt.ce._injectChildStyle(ut);const Rt=v.subTree=Du(v);A(null,Rt,C,K,v,G,N),b.el=Rt.el}if(Me&&Dt(Me,G),!Mt&&(ae=pe&&pe.onVnodeMounted)){const Rt=b;Dt(()=>en(ae,Pe,Rt),G)}(b.shapeFlag&256||Pe&&Sr(Pe.vnode)&&Pe.vnode.shapeFlag&256)&&v.a&&Dt(v.a,G),v.isMounted=!0,b=C=K=null}};v.scope.on();const se=v.effect=new Rd(re);v.scope.off();const Z=v.update=se.run.bind(se),he=v.job=se.runIfDirty.bind(se);he.i=v,he.id=v.uid,se.scheduler=()=>Ol(he),cs(v,!0),Z()},Q=(v,b,C)=>{b.component=v;const K=v.vnode.props;v.vnode=b,v.next=null,vy(v,b.props,K,C),wy(v,b.children,C),Tn(),Au(v),An()},J=(v,b,C,K,G,N,oe,re,se=!1)=>{const Z=v&&v.children,he=v?v.shapeFlag:0,ae=b.children,{patchFlag:fe,shapeFlag:pe}=b;if(fe>0){if(fe&128){ue(Z,ae,C,K,G,N,oe,re,se);return}else if(fe&256){ce(Z,ae,C,K,G,N,oe,re,se);return}}pe&8?(he&16&&We(Z,G,N),ae!==Z&&h(C,ae)):he&16?pe&16?ue(Z,ae,C,K,G,N,oe,re,se):We(Z,G,N,!0):(he&8&&h(C,""),pe&16&&w(ae,C,K,G,N,oe,re,se))},ce=(v,b,C,K,G,N,oe,re,se)=>{v=v||Ks,b=b||Ks;const Z=v.length,he=b.length,ae=Math.min(Z,he);let fe;for(fe=0;fehe?We(v,G,N,!0,!1,ae):w(b,C,K,G,N,oe,re,se,ae)},ue=(v,b,C,K,G,N,oe,re,se)=>{let Z=0;const he=b.length;let ae=v.length-1,fe=he-1;for(;Z<=ae&&Z<=fe;){const pe=v[Z],we=b[Z]=se?Fn(b[Z]):Wt(b[Z]);if(on(pe,we))A(pe,we,C,null,G,N,oe,re,se);else break;Z++}for(;Z<=ae&&Z<=fe;){const pe=v[ae],we=b[fe]=se?Fn(b[fe]):Wt(b[fe]);if(on(pe,we))A(pe,we,C,null,G,N,oe,re,se);else break;ae--,fe--}if(Z>ae){if(Z<=fe){const pe=fe+1,we=pefe)for(;Z<=ae;)be(v[Z],G,N,!0),Z++;else{const pe=Z,we=Z,Me=new Map;for(Z=we;Z<=fe;Z++){const gt=b[Z]=se?Fn(b[Z]):Wt(b[Z]);gt.key!=null&&Me.set(gt.key,Z)}let Pe,mt=0;const ut=fe-we+1;let Mt=!1,Rt=0;const Wn=new Array(ut);for(Z=0;Z=ut){be(gt,G,N,!0);continue}let it;if(gt.key!=null)it=Me.get(gt.key);else for(Pe=we;Pe<=fe;Pe++)if(Wn[Pe-we]===0&&on(gt,b[Pe])){it=Pe;break}it===void 0?be(gt,G,N,!0):(Wn[it-we]=Z+1,it>=Rt?Rt=it:Mt=!0,A(gt,b[it],C,null,G,N,oe,re,se),mt++)}const On=Mt?Cy(Wn):Ks;for(Pe=On.length-1,Z=ut-1;Z>=0;Z--){const gt=we+Z,it=b[gt],zr=gt+1{const{el:N,type:oe,transition:re,children:se,shapeFlag:Z}=v;if(Z&6){ge(v.component.subTree,b,C,K);return}if(Z&128){v.suspense.move(b,C,K);return}if(Z&64){oe.move(v,b,C,ie);return}if(oe===wt){s(N,b,C);for(let ae=0;aere.enter(N),G);else{const{leave:ae,delayLeave:fe,afterLeave:pe}=re,we=()=>{v.ctx.isUnmounted?r(N):s(N,b,C)},Me=()=>{ae(N,()=>{we(),pe&&pe()})};fe?fe(N,we,Me):Me()}else s(N,b,C)},be=(v,b,C,K=!1,G=!1)=>{const{type:N,props:oe,ref:re,children:se,dynamicChildren:Z,shapeFlag:he,patchFlag:ae,dirs:fe,cacheIndex:pe}=v;if(ae===-2&&(G=!1),re!=null&&(Tn(),Fi(re,null,C,v,!0),An()),pe!=null&&(b.renderCache[pe]=void 0),he&256){b.ctx.deactivate(v);return}const we=he&1&&fe,Me=!Sr(v);let Pe;if(Me&&(Pe=oe&&oe.onVnodeBeforeUnmount)&&en(Pe,b,v),he&6)qe(v.component,C,K);else{if(he&128){v.suspense.unmount(C,K);return}we&&ls(v,null,b,"beforeUnmount"),he&64?v.type.remove(v,b,C,ie,K):Z&&!Z.hasOnce&&(N!==wt||ae>0&&ae&64)?We(Z,b,C,!1,!0):(N===wt&&ae&384||!G&&he&16)&&We(se,b,C),K&&Ne(v)}(Me&&(Pe=oe&&oe.onVnodeUnmounted)||we)&&Dt(()=>{Pe&&en(Pe,b,v),we&&ls(v,null,b,"unmounted")},C)},Ne=v=>{const{type:b,el:C,anchor:K,transition:G}=v;if(b===wt){Ie(C,K);return}if(b===oa){U(v);return}const N=()=>{r(C),G&&!G.persisted&&G.afterLeave&&G.afterLeave()};if(v.shapeFlag&1&&G&&!G.persisted){const{leave:oe,delayLeave:re}=G,se=()=>oe(C,N);re?re(v.el,N,se):se()}else N()},Ie=(v,b)=>{let C;for(;v!==b;)C=g(v),r(v),v=C;r(b)},qe=(v,b,C)=>{const{bum:K,scope:G,job:N,subTree:oe,um:re,m:se,a:Z,parent:he,slots:{__:ae}}=v;Pu(se),Pu(Z),K&&Ti(K),he&&de(ae)&&ae.forEach(fe=>{he.renderCache[fe]=void 0}),G.stop(),N&&(N.flags|=8,be(oe,v,b,C)),re&&Dt(re,b),Dt(()=>{v.isUnmounted=!0},b),b&&b.pendingBranch&&!b.isUnmounted&&v.asyncDep&&!v.asyncResolved&&v.suspenseId===b.pendingId&&(b.deps--,b.deps===0&&b.resolve())},We=(v,b,C,K=!1,G=!1,N=0)=>{for(let oe=N;oe{if(v.shapeFlag&6)return V(v.component.subTree);if(v.shapeFlag&128)return v.suspense.next();const b=g(v.anchor||v.el),C=b&&b[Qb];return C?g(C):b};let T=!1;const te=(v,b,C)=>{v==null?b._vnode&&be(b._vnode,null,null,!0):A(b._vnode||null,v,b,null,null,null,C),b._vnode=v,T||(T=!0,Au(),zd(),T=!1)},ie={p:A,um:be,m:ge,r:Ne,mt:j,mc:w,pc:J,pbc:D,n:V,o:e};return{render:te,hydrate:void 0,createApp:my(te)}}function ia({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function cs({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Sy(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ah(e,t,n=!1){const s=e.children,r=t.children;if(de(s)&&de(r))for(let o=0;o>1,e[n[l]]0&&(t[s]=n[o-1]),n[o]=s)}}for(o=n.length,a=n[o-1];o-- >0;)n[o]=a,a=t[a];return n}function Sh(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Sh(t)}function Pu(e){if(e)for(let t=0;tIt(Oy);function zs(e,t,n){return Ch(e,t,n)}function Ch(e,t,n=Fe){const{immediate:s,deep:r,flush:o,once:a}=n,l=nt({},n),u=t&&s||!t&&o!=="post";let f;if(kr){if(o==="sync"){const _=Ry();f=_.__watcherHandles||(_.__watcherHandles=[])}else if(!u){const _=()=>{};return _.stop=an,_.resume=an,_.pause=an,_}}const h=rt;l.call=(_,E,A)=>zt(_,h,E,A);let p=!1;o==="post"?l.scheduler=_=>{Dt(_,h&&h.suspense)}:o!=="sync"&&(p=!0,l.scheduler=(_,E)=>{E?_():Ol(_)}),l.augmentJob=_=>{t&&(_.flags|=4),p&&(_.flags|=2,h&&(_.id=h.uid,_.i=h))};const g=zb(e,t,l);return kr&&(f?f.push(g):u&&g()),g}function Ny(e,t,n){const s=this.proxy,r=Je(e)?e.includes(".")?Oh(s,e):()=>s[e]:e.bind(s,s);let o;me(t)?o=t:(o=t.handler,n=t);const a=bs(this),l=Ch(r,o.bind(s),n);return a(),l}function Oh(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;rt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Ut(t)}Modifiers`]||e[`${Es(t)}Modifiers`];function $y(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||Fe;let r=n;const o=t.startsWith("update:"),a=o&&xy(s,t.slice(7));a&&(a.trim&&(r=n.map(h=>Je(h)?h.trim():h)),a.number&&(r=n.map(Di)));let l,u=s[l=Xo(t)]||s[l=Xo(Ut(t))];!u&&o&&(u=s[l=Xo(Es(t))]),u&&zt(u,e,6,r);const f=s[l+"Once"];if(f){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,zt(f,e,6,r)}}function Rh(e,t,n=!1){const s=t.emitsCache,r=s.get(e);if(r!==void 0)return r;const o=e.emits;let a={},l=!1;if(!me(e)){const u=f=>{const h=Rh(f,t,!0);h&&(l=!0,nt(a,h))};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}return!o&&!l?(He(e)&&s.set(e,null),null):(de(o)?o.forEach(u=>a[u]=null):nt(a,o),He(e)&&s.set(e,a),a)}function no(e,t){return!e||!Wi(t)?!1:(t=t.slice(2).replace(/Once$/,""),Le(e,t[0].toLowerCase()+t.slice(1))||Le(e,Es(t))||Le(e,t))}function Du(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[o],slots:a,attrs:l,emit:u,render:f,renderCache:h,props:p,data:g,setupState:_,ctx:E,inheritAttrs:A}=e,H=Bi(e);let I,F;try{if(n.shapeFlag&4){const U=r||s,q=U;I=Wt(f.call(q,U,h,p,_,g,E)),F=l}else{const U=t;I=Wt(U.length>1?U(p,{attrs:l,slots:a,emit:u}):U(p,null)),F=t.props?l:Dy(l)}}catch(U){Or.length=0,jr(U,e,1),I=$e(ct)}let k=I;if(F&&A!==!1){const U=Object.keys(F),{shapeFlag:q}=k;U.length&&q&7&&(o&&U.some(pl)&&(F=Ly(F,o)),k=qn(k,F,!1,!0))}return n.dirs&&(k=qn(k,null,!1,!0),k.dirs=k.dirs?k.dirs.concat(n.dirs):n.dirs),n.transition&&_s(k,n.transition),I=k,Bi(H),I}function Py(e,t=!0){let n;for(let s=0;s{let t;for(const n in e)(n==="class"||n==="style"||Wi(n))&&((t||(t={}))[n]=e[n]);return t},Ly=(e,t)=>{const n={};for(const s in e)(!pl(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function Iy(e,t,n){const{props:s,children:r,component:o}=e,{props:a,children:l,patchFlag:u}=t,f=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&u>=0){if(u&1024)return!0;if(u&16)return s?Lu(s,a,f):!!a;if(u&8){const h=t.dynamicProps;for(let p=0;pe.__isSuspense;let Ja=0;const My={name:"Suspense",__isSuspense:!0,process(e,t,n,s,r,o,a,l,u,f){if(e==null)ky(t,n,s,r,o,a,l,u,f);else{if(o&&o.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}By(e,t,n,s,r,a,l,u,f)}},hydrate:Fy,normalize:Hy},xh=My;function Ir(e,t){const n=e.props&&e.props[t];me(n)&&n()}function ky(e,t,n,s,r,o,a,l,u){const{p:f,o:{createElement:h}}=u,p=h("div"),g=e.suspense=$h(e,r,s,t,p,n,o,a,l,u);f(null,g.pendingBranch=e.ssContent,p,null,s,g,o,a),g.deps>0?(Ir(e,"onPending"),Ir(e,"onFallback"),f(null,e.ssFallback,t,n,s,null,o,a),Gs(g,e.ssFallback)):g.resolve(!1,!0)}function By(e,t,n,s,r,o,a,l,{p:u,um:f,o:{createElement:h}}){const p=t.suspense=e.suspense;p.vnode=t,t.el=e.el;const g=t.ssContent,_=t.ssFallback,{activeBranch:E,pendingBranch:A,isInFallback:H,isHydrating:I}=p;if(A)p.pendingBranch=g,on(g,A)?(u(A,g,p.hiddenContainer,null,r,p,o,a,l),p.deps<=0?p.resolve():H&&(I||(u(E,_,n,s,r,null,o,a,l),Gs(p,_)))):(p.pendingId=Ja++,I?(p.isHydrating=!1,p.activeBranch=A):f(A,r,p),p.deps=0,p.effects.length=0,p.hiddenContainer=h("div"),H?(u(null,g,p.hiddenContainer,null,r,p,o,a,l),p.deps<=0?p.resolve():(u(E,_,n,s,r,null,o,a,l),Gs(p,_))):E&&on(g,E)?(u(E,g,n,s,r,p,o,a,l),p.resolve(!0)):(u(null,g,p.hiddenContainer,null,r,p,o,a,l),p.deps<=0&&p.resolve()));else if(E&&on(g,E))u(E,g,n,s,r,p,o,a,l),Gs(p,g);else if(Ir(t,"onPending"),p.pendingBranch=g,g.shapeFlag&512?p.pendingId=g.component.suspenseId:p.pendingId=Ja++,u(null,g,p.hiddenContainer,null,r,p,o,a,l),p.deps<=0)p.resolve();else{const{timeout:F,pendingId:k}=p;F>0?setTimeout(()=>{p.pendingId===k&&p.fallback(_)},F):F===0&&p.fallback(_)}}function $h(e,t,n,s,r,o,a,l,u,f,h=!1){const{p,m:g,um:_,n:E,o:{parentNode:A,remove:H}}=f;let I;const F=Uy(e);F&&t&&t.pendingBranch&&(I=t.pendingId,t.deps++);const k=e.props?Ed(e.props.timeout):void 0,U=o,q={vnode:e,parent:t,parentComponent:n,namespace:a,container:s,hiddenContainer:r,deps:0,pendingId:Ja++,timeout:typeof k=="number"?k:-1,activeBranch:null,pendingBranch:null,isInFallback:!h,isHydrating:h,isUnmounted:!1,effects:[],resolve(O=!1,R=!1){const{vnode:w,activeBranch:S,pendingBranch:D,pendingId:M,effects:P,parentComponent:z,container:j}=q;let X=!1;q.isHydrating?q.isHydrating=!1:O||(X=S&&D.transition&&D.transition.mode==="out-in",X&&(S.transition.afterLeave=()=>{M===q.pendingId&&(g(D,j,o===U?E(S):o,0),Ka(P))}),S&&(A(S.el)===j&&(o=E(S)),_(S,z,q,!0)),X||g(D,j,o,0)),Gs(q,D),q.pendingBranch=null,q.isInFallback=!1;let Y=q.parent,Q=!1;for(;Y;){if(Y.pendingBranch){Y.effects.push(...P),Q=!0;break}Y=Y.parent}!Q&&!X&&Ka(P),q.effects=[],F&&t&&t.pendingBranch&&I===t.pendingId&&(t.deps--,t.deps===0&&!R&&t.resolve()),Ir(w,"onResolve")},fallback(O){if(!q.pendingBranch)return;const{vnode:R,activeBranch:w,parentComponent:S,container:D,namespace:M}=q;Ir(R,"onFallback");const P=E(w),z=()=>{q.isInFallback&&(p(null,O,D,P,S,null,M,l,u),Gs(q,O))},j=O.transition&&O.transition.mode==="out-in";j&&(w.transition.afterLeave=z),q.isInFallback=!0,_(w,S,null,!0),j||z()},move(O,R,w){q.activeBranch&&g(q.activeBranch,O,R,w),q.container=O},next(){return q.activeBranch&&E(q.activeBranch)},registerDep(O,R,w){const S=!!q.pendingBranch;S&&q.deps++;const D=O.vnode.el;O.asyncDep.catch(M=>{jr(M,O,0)}).then(M=>{if(O.isUnmounted||q.isUnmounted||q.pendingId!==O.suspenseId)return;O.asyncResolved=!0;const{vnode:P}=O;Za(O,M),D&&(P.el=D);const z=!D&&O.subTree.el;R(O,P,A(D||O.subTree.el),D?null:E(O.subTree),q,a,w),z&&H(z),Dl(O,P.el),S&&--q.deps===0&&q.resolve()})},unmount(O,R){q.isUnmounted=!0,q.activeBranch&&_(q.activeBranch,n,O,R),q.pendingBranch&&_(q.pendingBranch,n,O,R)}};return q}function Fy(e,t,n,s,r,o,a,l,u){const f=t.suspense=$h(t,s,n,e.parentNode,document.createElement("div"),null,r,o,a,l,!0),h=u(e,f.pendingBranch=t.ssContent,n,f,o,a);return f.deps===0&&f.resolve(!1,!0),h}function Hy(e){const{shapeFlag:t,children:n}=e,s=t&32;e.ssContent=Iu(s?n.default:n),e.ssFallback=s?Iu(n.fallback):$e(ct)}function Iu(e){let t;if(me(e)){const n=Js&&e._c;n&&(e._d=!1,ve()),e=e(),n&&(e._d=!0,t=At,Ph())}return de(e)&&(e=Py(e)),e=Wt(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function Vy(e,t){t&&t.pendingBranch?de(e)?t.effects.push(...e):t.effects.push(e):Ka(e)}function Gs(e,t){e.activeBranch=t;const{vnode:n,parentComponent:s}=e;let r=t.el;for(;!r&&t.component;)t=t.component.subTree,r=t.el;n.el=r,s&&s.subTree===n&&(s.vnode.el=r,Dl(s,r))}function Uy(e){const t=e.props&&e.props.suspensible;return t!=null&&t!==!1}const wt=Symbol.for("v-fgt"),so=Symbol.for("v-txt"),ct=Symbol.for("v-cmt"),oa=Symbol.for("v-stc"),Or=[];let At=null;function ve(e=!1){Or.push(At=e?null:[])}function Ph(){Or.pop(),At=Or[Or.length-1]||null}let Js=1;function Mu(e,t=!1){Js+=e,e<0&&At&&t&&(At.hasOnce=!0)}function Dh(e){return e.dynamicChildren=Js>0?At||Ks:null,Ph(),Js>0&&At&&At.push(e),e}function Re(e,t,n,s,r,o){return Dh(L(e,t,n,s,r,o,!0))}function fn(e,t,n,s,r){return Dh($e(e,t,n,s,r,!0))}function Mr(e){return e?e.__v_isVNode===!0:!1}function on(e,t){return e.type===t.type&&e.key===t.key}const Lh=({key:e})=>e??null,Si=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Je(e)||Ze(e)||me(e)?{i:Tt,r:e,k:t,f:!!n}:e:null);function L(e,t=null,n=null,s=0,r=null,o=e===wt?0:1,a=!1,l=!1){const u={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Lh(t),ref:t&&Si(t),scopeId:Jd,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Tt};return l?(Ll(u,n),o&128&&e.normalize(u)):n&&(u.shapeFlag|=Je(n)?8:16),Js>0&&!a&&At&&(u.patchFlag>0||o&6)&&u.patchFlag!==32&&At.push(u),u}const $e=jy;function jy(e,t=null,n=null,s=0,r=null,o=!1){if((!e||e===fh)&&(e=ct),Mr(e)){const l=qn(e,t,!0);return n&&Ll(l,n),Js>0&&!o&&At&&(l.shapeFlag&6?At[At.indexOf(e)]=l:At.push(l)),l.patchFlag=-2,l}if(eE(e)&&(e=e.__vccOpts),t){t=qy(t);let{class:l,style:u}=t;l&&!Je(l)&&(t.class=En(l)),He(u)&&(Sl(u)&&!de(u)&&(u=nt({},u)),t.style=Ji(u))}const a=Je(e)?1:Nh(e)?128:Qd(e)?64:He(e)?4:me(e)?2:0;return L(e,t,n,s,r,a,o,!0)}function qy(e){return e?Sl(e)||vh(e)?nt({},e):e:null}function qn(e,t,n=!1,s=!1){const{props:r,ref:o,patchFlag:a,children:l,transition:u}=e,f=t?Ky(r||{},t):r,h={__v_isVNode:!0,__v_skip:!0,type:e.type,props:f,key:f&&Lh(f),ref:t&&t.ref?n&&o?de(o)?o.concat(Si(t)):[o,Si(t)]:Si(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==wt?a===-1?16:a|16:a,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:u,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&qn(e.ssContent),ssFallback:e.ssFallback&&qn(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return u&&s&&_s(h,u.clone(h)),h}function Ye(e=" ",t=0){return $e(so,null,e,t)}function vs(e="",t=!1){return t?(ve(),fn(ct,null,e)):$e(ct,null,e)}function Wt(e){return e==null||typeof e=="boolean"?$e(ct):de(e)?$e(wt,null,e.slice()):Mr(e)?Fn(e):$e(so,null,String(e))}function Fn(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:qn(e)}function Ll(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(de(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),Ll(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!vh(t)?t._ctx=Tt:r===3&&Tt&&(Tt.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else me(t)?(t={default:t,_ctx:Tt},n=32):(t=String(t),s&64?(n=16,t=[Ye(t)]):n=8);e.children=t,e.shapeFlag|=n}function Ky(...e){const t={};for(let n=0;nrt||Tt;let Vi,Qa;{const e=Gi(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),o=>{r.length>1?r.forEach(a=>a(o)):r[0](o)}};Vi=t("__VUE_INSTANCE_SETTERS__",n=>rt=n),Qa=t("__VUE_SSR_SETTERS__",n=>kr=n)}const bs=e=>{const t=rt;return Vi(e),e.scope.on(),()=>{e.scope.off(),Vi(t)}},Xa=()=>{rt&&rt.scope.off(),Vi(null)};function Ih(e){return e.vnode.shapeFlag&4}let kr=!1;function Gy(e,t=!1,n=!1){t&&Qa(t);const{props:s,children:r}=e.vnode,o=Ih(e);_y(e,s,o,t),Ey(e,r,n||t);const a=o?Jy(e,t):void 0;return t&&Qa(!1),a}function Jy(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,ly);const{setup:s}=n;if(s){Tn();const r=e.setupContext=s.length>1?Xy(e):null,o=bs(e),a=Ur(s,e,0,[e.props,r]),l=gl(a);if(An(),o(),(l||e.sp)&&!Sr(e)&&rh(e),l){if(a.then(Xa,Xa),t)return a.then(u=>{Za(e,u)}).catch(u=>{jr(u,e,0)});e.asyncDep=a}else Za(e,a)}else Mh(e)}function Za(e,t,n){me(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:He(t)&&(e.setupState=Kd(t)),Mh(e)}function Mh(e,t,n){const s=e.type;e.render||(e.render=s.render||an);{const r=bs(e);Tn();try{cy(e)}finally{An(),r()}}}const Qy={get(e,t){return ht(e,"get",""),e[t]}};function Xy(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Qy),slots:e.slots,emit:e.emit,expose:t}}function ro(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Kd(Cl(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Cr)return Cr[n](e)},has(t,n){return n in t||n in Cr}})):e.proxy}function Zy(e,t=!0){return me(e)?e.displayName||e.name:e.name||t&&e.__name}function eE(e){return me(e)&&"__vccOpts"in e}const ze=(e,t)=>Wb(e,t,kr);function Ml(e,t,n){const s=arguments.length;return s===2?He(t)&&!de(t)?Mr(t)?$e(e,null,[t]):$e(e,t):$e(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&Mr(n)&&(n=[n]),$e(e,t,n))}const tE="3.5.16";/** +* @vue/runtime-dom v3.5.16 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let el;const ku=typeof window<"u"&&window.trustedTypes;if(ku)try{el=ku.createPolicy("vue",{createHTML:e=>e})}catch{}const kh=el?e=>el.createHTML(e):e=>e,nE="http://www.w3.org/2000/svg",sE="http://www.w3.org/1998/Math/MathML",_n=typeof document<"u"?document:null,Bu=_n&&_n.createElement("template"),rE={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?_n.createElementNS(nE,e):t==="mathml"?_n.createElementNS(sE,e):n?_n.createElement(e,{is:n}):_n.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>_n.createTextNode(e),createComment:e=>_n.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>_n.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,o){const a=n?n.previousSibling:t.lastChild;if(r&&(r===o||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===o||!(r=r.nextSibling)););else{Bu.innerHTML=kh(s==="svg"?`${e}`:s==="mathml"?`${e}`:e);const l=Bu.content;if(s==="svg"||s==="mathml"){const u=l.firstChild;for(;u.firstChild;)l.appendChild(u.firstChild);l.removeChild(u)}t.insertBefore(l,n)}return[a?a.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Pn="transition",gr="animation",Qs=Symbol("_vtc"),Bh={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Fh=nt({},Zd,Bh),iE=e=>(e.displayName="Transition",e.props=Fh,e),io=iE((e,{slots:t})=>Ml(Zb,Hh(e),t)),us=(e,t=[])=>{de(e)?e.forEach(n=>n(...t)):e&&e(...t)},Fu=e=>e?de(e)?e.some(t=>t.length>1):e.length>1:!1;function Hh(e){const t={};for(const P in e)P in Bh||(t[P]=e[P]);if(e.css===!1)return t;const{name:n="v",type:s,duration:r,enterFromClass:o=`${n}-enter-from`,enterActiveClass:a=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:u=o,appearActiveClass:f=a,appearToClass:h=l,leaveFromClass:p=`${n}-leave-from`,leaveActiveClass:g=`${n}-leave-active`,leaveToClass:_=`${n}-leave-to`}=e,E=oE(r),A=E&&E[0],H=E&&E[1],{onBeforeEnter:I,onEnter:F,onEnterCancelled:k,onLeave:U,onLeaveCancelled:q,onBeforeAppear:O=I,onAppear:R=F,onAppearCancelled:w=k}=t,S=(P,z,j,X)=>{P._enterCancelled=X,In(P,z?h:l),In(P,z?f:a),j&&j()},D=(P,z)=>{P._isLeaving=!1,In(P,p),In(P,_),In(P,g),z&&z()},M=P=>(z,j)=>{const X=P?R:F,Y=()=>S(z,P,j);us(X,[z,Y]),Hu(()=>{In(z,P?u:o),sn(z,P?h:l),Fu(X)||Vu(z,s,A,Y)})};return nt(t,{onBeforeEnter(P){us(I,[P]),sn(P,o),sn(P,a)},onBeforeAppear(P){us(O,[P]),sn(P,u),sn(P,f)},onEnter:M(!1),onAppear:M(!0),onLeave(P,z){P._isLeaving=!0;const j=()=>D(P,z);sn(P,p),P._enterCancelled?(sn(P,g),tl()):(tl(),sn(P,g)),Hu(()=>{P._isLeaving&&(In(P,p),sn(P,_),Fu(U)||Vu(P,s,H,j))}),us(U,[P,j])},onEnterCancelled(P){S(P,!1,void 0,!0),us(k,[P])},onAppearCancelled(P){S(P,!0,void 0,!0),us(w,[P])},onLeaveCancelled(P){D(P),us(q,[P])}})}function oE(e){if(e==null)return null;if(He(e))return[aa(e.enter),aa(e.leave)];{const t=aa(e);return[t,t]}}function aa(e){return Ed(e)}function sn(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Qs]||(e[Qs]=new Set)).add(t)}function In(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[Qs];n&&(n.delete(t),n.size||(e[Qs]=void 0))}function Hu(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let aE=0;function Vu(e,t,n,s){const r=e._endId=++aE,o=()=>{r===e._endId&&s()};if(n!=null)return setTimeout(o,n);const{type:a,timeout:l,propCount:u}=Vh(e,t);if(!a)return s();const f=a+"end";let h=0;const p=()=>{e.removeEventListener(f,g),o()},g=_=>{_.target===e&&++h>=u&&p()};setTimeout(()=>{h(n[E]||"").split(", "),r=s(`${Pn}Delay`),o=s(`${Pn}Duration`),a=Uu(r,o),l=s(`${gr}Delay`),u=s(`${gr}Duration`),f=Uu(l,u);let h=null,p=0,g=0;t===Pn?a>0&&(h=Pn,p=a,g=o.length):t===gr?f>0&&(h=gr,p=f,g=u.length):(p=Math.max(a,f),h=p>0?a>f?Pn:gr:null,g=h?h===Pn?o.length:u.length:0);const _=h===Pn&&/\b(transform|all)(,|$)/.test(s(`${Pn}Property`).toString());return{type:h,timeout:p,propCount:g,hasTransform:_}}function Uu(e,t){for(;e.lengthju(n)+ju(e[s])))}function ju(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function tl(){return document.body.offsetHeight}function lE(e,t,n){const s=e[Qs];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const qu=Symbol("_vod"),cE=Symbol("_vsh"),uE=Symbol(""),fE=/(^|;)\s*display\s*:/;function dE(e,t,n){const s=e.style,r=Je(n);let o=!1;if(n&&!r){if(t)if(Je(t))for(const a of t.split(";")){const l=a.slice(0,a.indexOf(":")).trim();n[l]==null&&Ci(s,l,"")}else for(const a in t)n[a]==null&&Ci(s,a,"");for(const a in n)a==="display"&&(o=!0),Ci(s,a,n[a])}else if(r){if(t!==n){const a=s[uE];a&&(n+=";"+a),s.cssText=n,o=fE.test(n)}}else t&&e.removeAttribute("style");qu in e&&(e[qu]=o?s.display:"",e[cE]&&(s.display="none"))}const Ku=/\s*!important$/;function Ci(e,t,n){if(de(n))n.forEach(s=>Ci(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=hE(e,t);Ku.test(n)?e.setProperty(Es(s),n.replace(Ku,""),"important"):e[s]=n}}const Wu=["Webkit","Moz","ms"],la={};function hE(e,t){const n=la[t];if(n)return n;let s=Ut(t);if(s!=="filter"&&s in e)return la[t]=s;s=zi(s);for(let r=0;rca||(_E.then(()=>ca=0),ca=Date.now());function bE(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;zt(yE(s,n.value),t,5,[s])};return n.value=e,n.attached=vE(),n}function yE(e,t){if(de(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const Xu=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,EE=(e,t,n,s,r,o)=>{const a=r==="svg";t==="class"?lE(e,s,a):t==="style"?dE(e,n,s):Wi(t)?pl(t)||mE(e,t,n,s,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):wE(e,t,s,a))?(Gu(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&zu(e,t,s,a,o,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!Je(s))?Gu(e,Ut(t),s,o,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),zu(e,t,s,a))};function wE(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&Xu(t)&&me(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Xu(t)&&Je(n)?!1:t in e}const Uh=new WeakMap,jh=new WeakMap,Ui=Symbol("_moveCb"),Zu=Symbol("_enterCb"),TE=e=>(delete e.props.mode,e),AE=TE({name:"TransitionGroup",props:nt({},Fh,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=Il(),s=Xd();let r,o;return lh(()=>{if(!r.length)return;const a=e.moveClass||`${e.name||"v"}-move`;if(!NE(r[0].el,n.vnode.el,a)){r=[];return}r.forEach(CE),r.forEach(OE);const l=r.filter(RE);tl(),l.forEach(u=>{const f=u.el,h=f.style;sn(f,a),h.transform=h.webkitTransform=h.transitionDuration="";const p=f[Ui]=g=>{g&&g.target!==f||(!g||/transform$/.test(g.propertyName))&&(f.removeEventListener("transitionend",p),f[Ui]=null,In(f,a))};f.addEventListener("transitionend",p)}),r=[]}),()=>{const a=Oe(e),l=Hh(a);let u=a.tag||wt;if(r=[],o)for(let f=0;f{l.split(/\s+/).forEach(u=>u&&s.classList.remove(u))}),n.split(/\s+/).forEach(l=>l&&s.classList.add(l)),s.style.display="none";const o=t.nodeType===1?t:t.parentNode;o.appendChild(s);const{hasTransform:a}=Vh(s);return o.removeChild(s),a}const Kn=e=>{const t=e.props["onUpdate:modelValue"]||!1;return de(t)?n=>Ti(t,n):t};function xE(e){e.target.composing=!0}function ef(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Vt=Symbol("_assign"),wn={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[Vt]=Kn(r);const o=s||r.props&&r.props.type==="number";yn(e,t?"change":"input",a=>{if(a.target.composing)return;let l=e.value;n&&(l=l.trim()),o&&(l=Di(l)),e[Vt](l)}),n&&yn(e,"change",()=>{e.value=e.value.trim()}),t||(yn(e,"compositionstart",xE),yn(e,"compositionend",ef),yn(e,"change",ef))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:o}},a){if(e[Vt]=Kn(a),e.composing)return;const l=(o||e.type==="number")&&!/^0\d/.test(e.value)?Di(e.value):e.value,u=t??"";l!==u&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===u)||(e.value=u))}},$E={deep:!0,created(e,t,n){e[Vt]=Kn(n),yn(e,"change",()=>{const s=e._modelValue,r=Xs(e),o=e.checked,a=e[Vt];if(de(s)){const l=vl(s,r),u=l!==-1;if(o&&!u)a(s.concat(r));else if(!o&&u){const f=[...s];f.splice(l,1),a(f)}}else if(tr(s)){const l=new Set(s);o?l.add(r):l.delete(r),a(l)}else a(qh(e,o))})},mounted:tf,beforeUpdate(e,t,n){e[Vt]=Kn(n),tf(e,t,n)}};function tf(e,{value:t,oldValue:n},s){e._modelValue=t;let r;if(de(t))r=vl(t,s.props.value)>-1;else if(tr(t))r=t.has(s.props.value);else{if(t===n)return;r=gs(t,qh(e,!0))}e.checked!==r&&(e.checked=r)}const PE={created(e,{value:t},n){e.checked=gs(t,n.props.value),e[Vt]=Kn(n),yn(e,"change",()=>{e[Vt](Xs(e))})},beforeUpdate(e,{value:t,oldValue:n},s){e[Vt]=Kn(s),t!==n&&(e.checked=gs(t,s.props.value))}},DE={deep:!0,created(e,{value:t,modifiers:{number:n}},s){const r=tr(t);yn(e,"change",()=>{const o=Array.prototype.filter.call(e.options,a=>a.selected).map(a=>n?Di(Xs(a)):Xs(a));e[Vt](e.multiple?r?new Set(o):o:o[0]),e._assigning=!0,Xi(()=>{e._assigning=!1})}),e[Vt]=Kn(s)},mounted(e,{value:t}){nf(e,t)},beforeUpdate(e,t,n){e[Vt]=Kn(n)},updated(e,{value:t}){e._assigning||nf(e,t)}};function nf(e,t){const n=e.multiple,s=de(t);if(!(n&&!s&&!tr(t))){for(let r=0,o=e.options.length;rString(f)===String(l)):a.selected=vl(t,l)>-1}else a.selected=t.has(l);else if(gs(Xs(a),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function Xs(e){return"_value"in e?e._value:e.value}function qh(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const ua={created(e,t,n){Ei(e,t,n,null,"created")},mounted(e,t,n){Ei(e,t,n,null,"mounted")},beforeUpdate(e,t,n,s){Ei(e,t,n,s,"beforeUpdate")},updated(e,t,n,s){Ei(e,t,n,s,"updated")}};function LE(e,t){switch(e){case"SELECT":return DE;case"TEXTAREA":return wn;default:switch(t){case"checkbox":return $E;case"radio":return PE;default:return wn}}}function Ei(e,t,n,s,r){const a=LE(e.tagName,n.props&&n.props.type)[r];a&&a(e,t,n,s)}const IE=nt({patchProp:EE},rE);let sf;function ME(){return sf||(sf=Ty(IE))}const kE=(...e)=>{const t=ME().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=FE(s);if(!r)return;const o=t._component;!me(o)&&!o.render&&!o.template&&(o.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const a=n(r,!1,BE(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),a},t};function BE(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function FE(e){return Je(e)?document.querySelector(e):e}/*! + * pinia v3.0.2 + * (c) 2025 Eduardo San Martin Morote + * @license MIT + */let Kh;const oo=e=>Kh=e,Wh=Symbol();function nl(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var Rr;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(Rr||(Rr={}));function HE(){const e=Cd(!0),t=e.run(()=>et({}));let n=[],s=[];const r=Cl({install(o){oo(r),r._a=o,o.provide(Wh,r),o.config.globalProperties.$pinia=r,s.forEach(a=>n.push(a)),s=[]},use(o){return this._a?n.push(o):s.push(o),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return r}const Yh=()=>{};function rf(e,t,n,s=Yh){e.push(t);const r=()=>{const o=e.indexOf(t);o>-1&&(e.splice(o,1),s())};return!n&&Od()&&bb(r),r}function Vs(e,...t){e.slice().forEach(n=>{n(...t)})}const VE=e=>e(),of=Symbol(),fa=Symbol();function sl(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,s)=>e.set(s,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const s=t[n],r=e[n];nl(r)&&nl(s)&&e.hasOwnProperty(n)&&!Ze(s)&&!Un(s)?e[n]=sl(r,s):e[n]=s}return e}const UE=Symbol();function jE(e){return!nl(e)||!Object.prototype.hasOwnProperty.call(e,UE)}const{assign:Mn}=Object;function qE(e){return!!(Ze(e)&&e.effect)}function KE(e,t,n,s){const{state:r,actions:o,getters:a}=t,l=n.state.value[e];let u;function f(){l||(n.state.value[e]=r?r():{});const h=Ub(n.state.value[e]);return Mn(h,o,Object.keys(a||{}).reduce((p,g)=>(p[g]=Cl(ze(()=>{oo(n);const _=n._s.get(e);return a[g].call(_,_)})),p),{}))}return u=zh(e,f,t,n,s,!0),u}function zh(e,t,n={},s,r,o){let a;const l=Mn({actions:{}},n),u={deep:!0};let f,h,p=[],g=[],_;const E=s.state.value[e];!o&&!E&&(s.state.value[e]={}),et({});let A;function H(w){let S;f=h=!1,typeof w=="function"?(w(s.state.value[e]),S={type:Rr.patchFunction,storeId:e,events:_}):(sl(s.state.value[e],w),S={type:Rr.patchObject,payload:w,storeId:e,events:_});const D=A=Symbol();Xi().then(()=>{A===D&&(f=!0)}),h=!0,Vs(p,S,s.state.value[e])}const I=o?function(){const{state:S}=n,D=S?S():{};this.$patch(M=>{Mn(M,D)})}:Yh;function F(){a.stop(),p=[],g=[],s._s.delete(e)}const k=(w,S="")=>{if(of in w)return w[fa]=S,w;const D=function(){oo(s);const M=Array.from(arguments),P=[],z=[];function j(Q){P.push(Q)}function X(Q){z.push(Q)}Vs(g,{args:M,name:D[fa],store:q,after:j,onError:X});let Y;try{Y=w.apply(this&&this.$id===e?this:q,M)}catch(Q){throw Vs(z,Q),Q}return Y instanceof Promise?Y.then(Q=>(Vs(P,Q),Q)).catch(Q=>(Vs(z,Q),Promise.reject(Q))):(Vs(P,Y),Y)};return D[of]=!0,D[fa]=S,D},U={_p:s,$id:e,$onAction:rf.bind(null,g),$patch:H,$reset:I,$subscribe(w,S={}){const D=rf(p,w,S.detached,()=>M()),M=a.run(()=>zs(()=>s.state.value[e],P=>{(S.flush==="sync"?h:f)&&w({storeId:e,type:Rr.direct,events:_},P)},Mn({},u,S)));return D},$dispose:F},q=Sn(U);s._s.set(e,q);const R=(s._a&&s._a.runWithContext||VE)(()=>s._e.run(()=>(a=Cd()).run(()=>t({action:k}))));for(const w in R){const S=R[w];if(Ze(S)&&!qE(S)||Un(S))o||(E&&jE(S)&&(Ze(S)?S.value=E[w]:sl(S,E[w])),s.state.value[e][w]=S);else if(typeof S=="function"){const D=k(S,w);R[w]=D,l.actions[w]=S}}return Mn(q,R),Mn(Oe(q),R),Object.defineProperty(q,"$state",{get:()=>s.state.value[e],set:w=>{H(S=>{Mn(S,w)})}}),s._p.forEach(w=>{Mn(q,a.run(()=>w({store:q,app:s._a,pinia:s,options:l})))}),E&&o&&n.hydrate&&n.hydrate(q.$state,E),f=!0,h=!0,q}/*! #__NO_SIDE_EFFECTS__ */function WE(e,t,n){let s;const r=typeof t=="function";s=r?n:t;function o(a,l){const u=gy();return a=a||(u?It(Wh,null):null),a&&oo(a),a=Kh,a._s.has(e)||(r?zh(e,t,s,a):KE(e,s,a)),a._s.get(e)}return o.$id=e,o}const at=[];for(let e=0;e<256;++e)at.push((e+256).toString(16).slice(1));function YE(e,t=0){return(at[e[t+0]]+at[e[t+1]]+at[e[t+2]]+at[e[t+3]]+"-"+at[e[t+4]]+at[e[t+5]]+"-"+at[e[t+6]]+at[e[t+7]]+"-"+at[e[t+8]]+at[e[t+9]]+"-"+at[e[t+10]]+at[e[t+11]]+at[e[t+12]]+at[e[t+13]]+at[e[t+14]]+at[e[t+15]]).toLowerCase()}let da;const zE=new Uint8Array(16);function GE(){if(!da){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");da=crypto.getRandomValues.bind(crypto)}return da(zE)}const JE=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),af={randomUUID:JE};function Gh(e,t,n){var r;if(af.randomUUID&&!e)return af.randomUUID();e=e||{};const s=e.random??((r=e.rng)==null?void 0:r.call(e))??GE();if(s.length<16)throw new Error("Random bytes length must be >= 16");return s[6]=s[6]&15|64,s[8]=s[8]&63|128,YE(s)}function kl(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Oi={exports:{}},QE=Oi.exports,lf;function XE(){return lf||(lf=1,function(e,t){(function(n,s){e.exports=s()})(QE,function(){var n=1e3,s=6e4,r=36e5,o="millisecond",a="second",l="minute",u="hour",f="day",h="week",p="month",g="quarter",_="year",E="date",A="Invalid Date",H=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,I=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,F={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(j){var X=["th","st","nd","rd"],Y=j%100;return"["+j+(X[(Y-20)%10]||X[Y]||X[0])+"]"}},k=function(j,X,Y){var Q=String(j);return!Q||Q.length>=X?j:""+Array(X+1-Q.length).join(Y)+j},U={s:k,z:function(j){var X=-j.utcOffset(),Y=Math.abs(X),Q=Math.floor(Y/60),J=Y%60;return(X<=0?"+":"-")+k(Q,2,"0")+":"+k(J,2,"0")},m:function j(X,Y){if(X.date()1)return j(ue[0])}else{var ge=X.name;O[ge]=X,J=ge}return!Q&&J&&(q=J),J||!Q&&q},D=function(j,X){if(w(j))return j.clone();var Y=typeof X=="object"?X:{};return Y.date=j,Y.args=arguments,new P(Y)},M=U;M.l=S,M.i=w,M.w=function(j,X){return D(j,{locale:X.$L,utc:X.$u,x:X.$x,$offset:X.$offset})};var P=function(){function j(Y){this.$L=S(Y.locale,null,!0),this.parse(Y),this.$x=this.$x||Y.x||{},this[R]=!0}var X=j.prototype;return X.parse=function(Y){this.$d=function(Q){var J=Q.date,ce=Q.utc;if(J===null)return new Date(NaN);if(M.u(J))return new Date;if(J instanceof Date)return new Date(J);if(typeof J=="string"&&!/Z$/i.test(J)){var ue=J.match(H);if(ue){var ge=ue[2]-1||0,be=(ue[7]||"0").substring(0,3);return ce?new Date(Date.UTC(ue[1],ge,ue[3]||1,ue[4]||0,ue[5]||0,ue[6]||0,be)):new Date(ue[1],ge,ue[3]||1,ue[4]||0,ue[5]||0,ue[6]||0,be)}}return new Date(J)}(Y),this.init()},X.init=function(){var Y=this.$d;this.$y=Y.getFullYear(),this.$M=Y.getMonth(),this.$D=Y.getDate(),this.$W=Y.getDay(),this.$H=Y.getHours(),this.$m=Y.getMinutes(),this.$s=Y.getSeconds(),this.$ms=Y.getMilliseconds()},X.$utils=function(){return M},X.isValid=function(){return this.$d.toString()!==A},X.isSame=function(Y,Q){var J=D(Y);return this.startOf(Q)<=J&&J<=this.endOf(Q)},X.isAfter=function(Y,Q){return D(Y)t=>{const n=ew.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Jt=e=>(e=e.toLowerCase(),t=>lo(t)===e),co=e=>t=>typeof t===e,{isArray:nr}=Array,Br=co("undefined");function tw(e){return e!==null&&!Br(e)&&e.constructor!==null&&!Br(e.constructor)&&Ct(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Xh=Jt("ArrayBuffer");function nw(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Xh(e.buffer),t}const sw=co("string"),Ct=co("function"),Zh=co("number"),uo=e=>e!==null&&typeof e=="object",rw=e=>e===!0||e===!1,Ri=e=>{if(lo(e)!=="object")return!1;const t=Bl(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Qh in e)&&!(ao in e)},iw=Jt("Date"),ow=Jt("File"),aw=Jt("Blob"),lw=Jt("FileList"),cw=e=>uo(e)&&Ct(e.pipe),uw=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||Ct(e.append)&&((t=lo(e))==="formdata"||t==="object"&&Ct(e.toString)&&e.toString()==="[object FormData]"))},fw=Jt("URLSearchParams"),[dw,hw,pw,mw]=["ReadableStream","Request","Response","Headers"].map(Jt),gw=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Kr(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let s,r;if(typeof e!="object"&&(e=[e]),nr(e))for(s=0,r=e.length;s0;)if(r=n[s],t===r.toLowerCase())return r;return null}const ds=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,tp=e=>!Br(e)&&e!==ds;function rl(){const{caseless:e}=tp(this)&&this||{},t={},n=(s,r)=>{const o=e&&ep(t,r)||r;Ri(t[o])&&Ri(s)?t[o]=rl(t[o],s):Ri(s)?t[o]=rl({},s):nr(s)?t[o]=s.slice():t[o]=s};for(let s=0,r=arguments.length;s(Kr(t,(r,o)=>{n&&Ct(r)?e[o]=Jh(r,n):e[o]=r},{allOwnKeys:s}),e),vw=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),bw=(e,t,n,s)=>{e.prototype=Object.create(t.prototype,s),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},yw=(e,t,n,s)=>{let r,o,a;const l={};if(t=t||{},e==null)return t;do{for(r=Object.getOwnPropertyNames(e),o=r.length;o-- >0;)a=r[o],(!s||s(a,e,t))&&!l[a]&&(t[a]=e[a],l[a]=!0);e=n!==!1&&Bl(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},Ew=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const s=e.indexOf(t,n);return s!==-1&&s===n},ww=e=>{if(!e)return null;if(nr(e))return e;let t=e.length;if(!Zh(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Tw=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Bl(Uint8Array)),Aw=(e,t)=>{const s=(e&&e[ao]).call(e);let r;for(;(r=s.next())&&!r.done;){const o=r.value;t.call(e,o[0],o[1])}},Sw=(e,t)=>{let n;const s=[];for(;(n=e.exec(t))!==null;)s.push(n);return s},Cw=Jt("HTMLFormElement"),Ow=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,r){return s.toUpperCase()+r}),cf=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Rw=Jt("RegExp"),np=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),s={};Kr(n,(r,o)=>{let a;(a=t(r,o,e))!==!1&&(s[o]=a||r)}),Object.defineProperties(e,s)},Nw=e=>{np(e,(t,n)=>{if(Ct(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=e[n];if(Ct(s)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},xw=(e,t)=>{const n={},s=r=>{r.forEach(o=>{n[o]=!0})};return nr(e)?s(e):s(String(e).split(t)),n},$w=()=>{},Pw=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function Dw(e){return!!(e&&Ct(e.append)&&e[Qh]==="FormData"&&e[ao])}const Lw=e=>{const t=new Array(10),n=(s,r)=>{if(uo(s)){if(t.indexOf(s)>=0)return;if(!("toJSON"in s)){t[r]=s;const o=nr(s)?[]:{};return Kr(s,(a,l)=>{const u=n(a,r+1);!Br(u)&&(o[l]=u)}),t[r]=void 0,o}}return s};return n(e,0)},Iw=Jt("AsyncFunction"),Mw=e=>e&&(uo(e)||Ct(e))&&Ct(e.then)&&Ct(e.catch),sp=((e,t)=>e?setImmediate:t?((n,s)=>(ds.addEventListener("message",({source:r,data:o})=>{r===ds&&o===n&&s.length&&s.shift()()},!1),r=>{s.push(r),ds.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Ct(ds.postMessage)),kw=typeof queueMicrotask<"u"?queueMicrotask.bind(ds):typeof process<"u"&&process.nextTick||sp,Bw=e=>e!=null&&Ct(e[ao]),B={isArray:nr,isArrayBuffer:Xh,isBuffer:tw,isFormData:uw,isArrayBufferView:nw,isString:sw,isNumber:Zh,isBoolean:rw,isObject:uo,isPlainObject:Ri,isReadableStream:dw,isRequest:hw,isResponse:pw,isHeaders:mw,isUndefined:Br,isDate:iw,isFile:ow,isBlob:aw,isRegExp:Rw,isFunction:Ct,isStream:cw,isURLSearchParams:fw,isTypedArray:Tw,isFileList:lw,forEach:Kr,merge:rl,extend:_w,trim:gw,stripBOM:vw,inherits:bw,toFlatObject:yw,kindOf:lo,kindOfTest:Jt,endsWith:Ew,toArray:ww,forEachEntry:Aw,matchAll:Sw,isHTMLForm:Cw,hasOwnProperty:cf,hasOwnProp:cf,reduceDescriptors:np,freezeMethods:Nw,toObjectSet:xw,toCamelCase:Ow,noop:$w,toFiniteNumber:Pw,findKey:ep,global:ds,isContextDefined:tp,isSpecCompliantForm:Dw,toJSONObject:Lw,isAsyncFn:Iw,isThenable:Mw,setImmediate:sp,asap:kw,isIterable:Bw};function ye(e,t,n,s,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),s&&(this.request=s),r&&(this.response=r,this.status=r.status?r.status:null)}B.inherits(ye,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:B.toJSONObject(this.config),code:this.code,status:this.status}}});const rp=ye.prototype,ip={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{ip[e]={value:e}});Object.defineProperties(ye,ip);Object.defineProperty(rp,"isAxiosError",{value:!0});ye.from=(e,t,n,s,r,o)=>{const a=Object.create(rp);return B.toFlatObject(e,a,function(u){return u!==Error.prototype},l=>l!=="isAxiosError"),ye.call(a,e.message,t,n,s,r),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};const Fw=null;function il(e){return B.isPlainObject(e)||B.isArray(e)}function op(e){return B.endsWith(e,"[]")?e.slice(0,-2):e}function uf(e,t,n){return e?e.concat(t).map(function(r,o){return r=op(r),!n&&o?"["+r+"]":r}).join(n?".":""):t}function Hw(e){return B.isArray(e)&&!e.some(il)}const Vw=B.toFlatObject(B,{},null,function(t){return/^is[A-Z]/.test(t)});function fo(e,t,n){if(!B.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=B.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(A,H){return!B.isUndefined(H[A])});const s=n.metaTokens,r=n.visitor||h,o=n.dots,a=n.indexes,u=(n.Blob||typeof Blob<"u"&&Blob)&&B.isSpecCompliantForm(t);if(!B.isFunction(r))throw new TypeError("visitor must be a function");function f(E){if(E===null)return"";if(B.isDate(E))return E.toISOString();if(!u&&B.isBlob(E))throw new ye("Blob is not supported. Use a Buffer instead.");return B.isArrayBuffer(E)||B.isTypedArray(E)?u&&typeof Blob=="function"?new Blob([E]):Buffer.from(E):E}function h(E,A,H){let I=E;if(E&&!H&&typeof E=="object"){if(B.endsWith(A,"{}"))A=s?A:A.slice(0,-2),E=JSON.stringify(E);else if(B.isArray(E)&&Hw(E)||(B.isFileList(E)||B.endsWith(A,"[]"))&&(I=B.toArray(E)))return A=op(A),I.forEach(function(k,U){!(B.isUndefined(k)||k===null)&&t.append(a===!0?uf([A],U,o):a===null?A:A+"[]",f(k))}),!1}return il(E)?!0:(t.append(uf(H,A,o),f(E)),!1)}const p=[],g=Object.assign(Vw,{defaultVisitor:h,convertValue:f,isVisitable:il});function _(E,A){if(!B.isUndefined(E)){if(p.indexOf(E)!==-1)throw Error("Circular reference detected in "+A.join("."));p.push(E),B.forEach(E,function(I,F){(!(B.isUndefined(I)||I===null)&&r.call(t,I,B.isString(F)?F.trim():F,A,g))===!0&&_(I,A?A.concat(F):[F])}),p.pop()}}if(!B.isObject(e))throw new TypeError("data must be an object");return _(e),t}function ff(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(s){return t[s]})}function Fl(e,t){this._pairs=[],e&&fo(e,this,t)}const ap=Fl.prototype;ap.append=function(t,n){this._pairs.push([t,n])};ap.toString=function(t){const n=t?function(s){return t.call(this,s,ff)}:ff;return this._pairs.map(function(r){return n(r[0])+"="+n(r[1])},"").join("&")};function Uw(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function lp(e,t,n){if(!t)return e;const s=n&&n.encode||Uw;B.isFunction(n)&&(n={serialize:n});const r=n&&n.serialize;let o;if(r?o=r(t,n):o=B.isURLSearchParams(t)?t.toString():new Fl(t,n).toString(s),o){const a=e.indexOf("#");a!==-1&&(e=e.slice(0,a)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class df{constructor(){this.handlers=[]}use(t,n,s){return this.handlers.push({fulfilled:t,rejected:n,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){B.forEach(this.handlers,function(s){s!==null&&t(s)})}}const cp={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},jw=typeof URLSearchParams<"u"?URLSearchParams:Fl,qw=typeof FormData<"u"?FormData:null,Kw=typeof Blob<"u"?Blob:null,Ww={isBrowser:!0,classes:{URLSearchParams:jw,FormData:qw,Blob:Kw},protocols:["http","https","file","blob","url","data"]},Hl=typeof window<"u"&&typeof document<"u",ol=typeof navigator=="object"&&navigator||void 0,Yw=Hl&&(!ol||["ReactNative","NativeScript","NS"].indexOf(ol.product)<0),zw=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Gw=Hl&&window.location.href||"http://localhost",Jw=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Hl,hasStandardBrowserEnv:Yw,hasStandardBrowserWebWorkerEnv:zw,navigator:ol,origin:Gw},Symbol.toStringTag,{value:"Module"})),pt={...Jw,...Ww};function Qw(e,t){return fo(e,new pt.classes.URLSearchParams,Object.assign({visitor:function(n,s,r,o){return pt.isNode&&B.isBuffer(n)?(this.append(s,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function Xw(e){return B.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Zw(e){const t={},n=Object.keys(e);let s;const r=n.length;let o;for(s=0;s=n.length;return a=!a&&B.isArray(r)?r.length:a,u?(B.hasOwnProp(r,a)?r[a]=[r[a],s]:r[a]=s,!l):((!r[a]||!B.isObject(r[a]))&&(r[a]=[]),t(n,s,r[a],o)&&B.isArray(r[a])&&(r[a]=Zw(r[a])),!l)}if(B.isFormData(e)&&B.isFunction(e.entries)){const n={};return B.forEachEntry(e,(s,r)=>{t(Xw(s),r,n,0)}),n}return null}function e0(e,t,n){if(B.isString(e))try{return(t||JSON.parse)(e),B.trim(e)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(e)}const Wr={transitional:cp,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const s=n.getContentType()||"",r=s.indexOf("application/json")>-1,o=B.isObject(t);if(o&&B.isHTMLForm(t)&&(t=new FormData(t)),B.isFormData(t))return r?JSON.stringify(up(t)):t;if(B.isArrayBuffer(t)||B.isBuffer(t)||B.isStream(t)||B.isFile(t)||B.isBlob(t)||B.isReadableStream(t))return t;if(B.isArrayBufferView(t))return t.buffer;if(B.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(o){if(s.indexOf("application/x-www-form-urlencoded")>-1)return Qw(t,this.formSerializer).toString();if((l=B.isFileList(t))||s.indexOf("multipart/form-data")>-1){const u=this.env&&this.env.FormData;return fo(l?{"files[]":t}:t,u&&new u,this.formSerializer)}}return o||r?(n.setContentType("application/json",!1),e0(t)):t}],transformResponse:[function(t){const n=this.transitional||Wr.transitional,s=n&&n.forcedJSONParsing,r=this.responseType==="json";if(B.isResponse(t)||B.isReadableStream(t))return t;if(t&&B.isString(t)&&(s&&!this.responseType||r)){const a=!(n&&n.silentJSONParsing)&&r;try{return JSON.parse(t)}catch(l){if(a)throw l.name==="SyntaxError"?ye.from(l,ye.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:pt.classes.FormData,Blob:pt.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};B.forEach(["delete","get","head","post","put","patch"],e=>{Wr.headers[e]={}});const t0=B.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),n0=e=>{const t={};let n,s,r;return e&&e.split(` +`).forEach(function(a){r=a.indexOf(":"),n=a.substring(0,r).trim().toLowerCase(),s=a.substring(r+1).trim(),!(!n||t[n]&&t0[n])&&(n==="set-cookie"?t[n]?t[n].push(s):t[n]=[s]:t[n]=t[n]?t[n]+", "+s:s)}),t},hf=Symbol("internals");function _r(e){return e&&String(e).trim().toLowerCase()}function Ni(e){return e===!1||e==null?e:B.isArray(e)?e.map(Ni):String(e)}function s0(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=n.exec(e);)t[s[1]]=s[2];return t}const r0=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function ha(e,t,n,s,r){if(B.isFunction(s))return s.call(this,t,n);if(r&&(t=n),!!B.isString(t)){if(B.isString(s))return t.indexOf(s)!==-1;if(B.isRegExp(s))return s.test(t)}}function i0(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,s)=>n.toUpperCase()+s)}function o0(e,t){const n=B.toCamelCase(" "+t);["get","set","has"].forEach(s=>{Object.defineProperty(e,s+n,{value:function(r,o,a){return this[s].call(this,t,r,o,a)},configurable:!0})})}let Ot=class{constructor(t){t&&this.set(t)}set(t,n,s){const r=this;function o(l,u,f){const h=_r(u);if(!h)throw new Error("header name must be a non-empty string");const p=B.findKey(r,h);(!p||r[p]===void 0||f===!0||f===void 0&&r[p]!==!1)&&(r[p||u]=Ni(l))}const a=(l,u)=>B.forEach(l,(f,h)=>o(f,h,u));if(B.isPlainObject(t)||t instanceof this.constructor)a(t,n);else if(B.isString(t)&&(t=t.trim())&&!r0(t))a(n0(t),n);else if(B.isObject(t)&&B.isIterable(t)){let l={},u,f;for(const h of t){if(!B.isArray(h))throw TypeError("Object iterator must return a key-value pair");l[f=h[0]]=(u=l[f])?B.isArray(u)?[...u,h[1]]:[u,h[1]]:h[1]}a(l,n)}else t!=null&&o(n,t,s);return this}get(t,n){if(t=_r(t),t){const s=B.findKey(this,t);if(s){const r=this[s];if(!n)return r;if(n===!0)return s0(r);if(B.isFunction(n))return n.call(this,r,s);if(B.isRegExp(n))return n.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=_r(t),t){const s=B.findKey(this,t);return!!(s&&this[s]!==void 0&&(!n||ha(this,this[s],s,n)))}return!1}delete(t,n){const s=this;let r=!1;function o(a){if(a=_r(a),a){const l=B.findKey(s,a);l&&(!n||ha(s,s[l],l,n))&&(delete s[l],r=!0)}}return B.isArray(t)?t.forEach(o):o(t),r}clear(t){const n=Object.keys(this);let s=n.length,r=!1;for(;s--;){const o=n[s];(!t||ha(this,this[o],o,t,!0))&&(delete this[o],r=!0)}return r}normalize(t){const n=this,s={};return B.forEach(this,(r,o)=>{const a=B.findKey(s,o);if(a){n[a]=Ni(r),delete n[o];return}const l=t?i0(o):String(o).trim();l!==o&&delete n[o],n[l]=Ni(r),s[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return B.forEach(this,(s,r)=>{s!=null&&s!==!1&&(n[r]=t&&B.isArray(s)?s.join(", "):s)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` +`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const s=new this(t);return n.forEach(r=>s.set(r)),s}static accessor(t){const s=(this[hf]=this[hf]={accessors:{}}).accessors,r=this.prototype;function o(a){const l=_r(a);s[l]||(o0(r,a),s[l]=!0)}return B.isArray(t)?t.forEach(o):o(t),this}};Ot.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);B.reduceDescriptors(Ot.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(s){this[n]=s}}});B.freezeMethods(Ot);function pa(e,t){const n=this||Wr,s=t||n,r=Ot.from(s.headers);let o=s.data;return B.forEach(e,function(l){o=l.call(n,o,r.normalize(),t?t.status:void 0)}),r.normalize(),o}function fp(e){return!!(e&&e.__CANCEL__)}function sr(e,t,n){ye.call(this,e??"canceled",ye.ERR_CANCELED,t,n),this.name="CanceledError"}B.inherits(sr,ye,{__CANCEL__:!0});function dp(e,t,n){const s=n.config.validateStatus;!n.status||!s||s(n.status)?e(n):t(new ye("Request failed with status code "+n.status,[ye.ERR_BAD_REQUEST,ye.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function a0(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function l0(e,t){e=e||10;const n=new Array(e),s=new Array(e);let r=0,o=0,a;return t=t!==void 0?t:1e3,function(u){const f=Date.now(),h=s[o];a||(a=f),n[r]=u,s[r]=f;let p=o,g=0;for(;p!==r;)g+=n[p++],p=p%e;if(r=(r+1)%e,r===o&&(o=(o+1)%e),f-a{n=h,r=null,o&&(clearTimeout(o),o=null),e.apply(null,f)};return[(...f)=>{const h=Date.now(),p=h-n;p>=s?a(f,h):(r=f,o||(o=setTimeout(()=>{o=null,a(r)},s-p)))},()=>r&&a(r)]}const ji=(e,t,n=3)=>{let s=0;const r=l0(50,250);return c0(o=>{const a=o.loaded,l=o.lengthComputable?o.total:void 0,u=a-s,f=r(u),h=a<=l;s=a;const p={loaded:a,total:l,progress:l?a/l:void 0,bytes:u,rate:f||void 0,estimated:f&&l&&h?(l-a)/f:void 0,event:o,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(p)},n)},pf=(e,t)=>{const n=e!=null;return[s=>t[0]({lengthComputable:n,total:e,loaded:s}),t[1]]},mf=e=>(...t)=>B.asap(()=>e(...t)),u0=pt.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,pt.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(pt.origin),pt.navigator&&/(msie|trident)/i.test(pt.navigator.userAgent)):()=>!0,f0=pt.hasStandardBrowserEnv?{write(e,t,n,s,r,o){const a=[e+"="+encodeURIComponent(t)];B.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),B.isString(s)&&a.push("path="+s),B.isString(r)&&a.push("domain="+r),o===!0&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function d0(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function h0(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function hp(e,t,n){let s=!d0(t);return e&&(s||n==!1)?h0(e,t):t}const gf=e=>e instanceof Ot?{...e}:e;function ys(e,t){t=t||{};const n={};function s(f,h,p,g){return B.isPlainObject(f)&&B.isPlainObject(h)?B.merge.call({caseless:g},f,h):B.isPlainObject(h)?B.merge({},h):B.isArray(h)?h.slice():h}function r(f,h,p,g){if(B.isUndefined(h)){if(!B.isUndefined(f))return s(void 0,f,p,g)}else return s(f,h,p,g)}function o(f,h){if(!B.isUndefined(h))return s(void 0,h)}function a(f,h){if(B.isUndefined(h)){if(!B.isUndefined(f))return s(void 0,f)}else return s(void 0,h)}function l(f,h,p){if(p in t)return s(f,h);if(p in e)return s(void 0,f)}const u={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:l,headers:(f,h,p)=>r(gf(f),gf(h),p,!0)};return B.forEach(Object.keys(Object.assign({},e,t)),function(h){const p=u[h]||r,g=p(e[h],t[h],h);B.isUndefined(g)&&p!==l||(n[h]=g)}),n}const pp=e=>{const t=ys({},e);let{data:n,withXSRFToken:s,xsrfHeaderName:r,xsrfCookieName:o,headers:a,auth:l}=t;t.headers=a=Ot.from(a),t.url=lp(hp(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&a.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let u;if(B.isFormData(n)){if(pt.hasStandardBrowserEnv||pt.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if((u=a.getContentType())!==!1){const[f,...h]=u?u.split(";").map(p=>p.trim()).filter(Boolean):[];a.setContentType([f||"multipart/form-data",...h].join("; "))}}if(pt.hasStandardBrowserEnv&&(s&&B.isFunction(s)&&(s=s(t)),s||s!==!1&&u0(t.url))){const f=r&&o&&f0.read(o);f&&a.set(r,f)}return t},p0=typeof XMLHttpRequest<"u",m0=p0&&function(e){return new Promise(function(n,s){const r=pp(e);let o=r.data;const a=Ot.from(r.headers).normalize();let{responseType:l,onUploadProgress:u,onDownloadProgress:f}=r,h,p,g,_,E;function A(){_&&_(),E&&E(),r.cancelToken&&r.cancelToken.unsubscribe(h),r.signal&&r.signal.removeEventListener("abort",h)}let H=new XMLHttpRequest;H.open(r.method.toUpperCase(),r.url,!0),H.timeout=r.timeout;function I(){if(!H)return;const k=Ot.from("getAllResponseHeaders"in H&&H.getAllResponseHeaders()),q={data:!l||l==="text"||l==="json"?H.responseText:H.response,status:H.status,statusText:H.statusText,headers:k,config:e,request:H};dp(function(R){n(R),A()},function(R){s(R),A()},q),H=null}"onloadend"in H?H.onloadend=I:H.onreadystatechange=function(){!H||H.readyState!==4||H.status===0&&!(H.responseURL&&H.responseURL.indexOf("file:")===0)||setTimeout(I)},H.onabort=function(){H&&(s(new ye("Request aborted",ye.ECONNABORTED,e,H)),H=null)},H.onerror=function(){s(new ye("Network Error",ye.ERR_NETWORK,e,H)),H=null},H.ontimeout=function(){let U=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const q=r.transitional||cp;r.timeoutErrorMessage&&(U=r.timeoutErrorMessage),s(new ye(U,q.clarifyTimeoutError?ye.ETIMEDOUT:ye.ECONNABORTED,e,H)),H=null},o===void 0&&a.setContentType(null),"setRequestHeader"in H&&B.forEach(a.toJSON(),function(U,q){H.setRequestHeader(q,U)}),B.isUndefined(r.withCredentials)||(H.withCredentials=!!r.withCredentials),l&&l!=="json"&&(H.responseType=r.responseType),f&&([g,E]=ji(f,!0),H.addEventListener("progress",g)),u&&H.upload&&([p,_]=ji(u),H.upload.addEventListener("progress",p),H.upload.addEventListener("loadend",_)),(r.cancelToken||r.signal)&&(h=k=>{H&&(s(!k||k.type?new sr(null,e,H):k),H.abort(),H=null)},r.cancelToken&&r.cancelToken.subscribe(h),r.signal&&(r.signal.aborted?h():r.signal.addEventListener("abort",h)));const F=a0(r.url);if(F&&pt.protocols.indexOf(F)===-1){s(new ye("Unsupported protocol "+F+":",ye.ERR_BAD_REQUEST,e));return}H.send(o||null)})},g0=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let s=new AbortController,r;const o=function(f){if(!r){r=!0,l();const h=f instanceof Error?f:this.reason;s.abort(h instanceof ye?h:new sr(h instanceof Error?h.message:h))}};let a=t&&setTimeout(()=>{a=null,o(new ye(`timeout ${t} of ms exceeded`,ye.ETIMEDOUT))},t);const l=()=>{e&&(a&&clearTimeout(a),a=null,e.forEach(f=>{f.unsubscribe?f.unsubscribe(o):f.removeEventListener("abort",o)}),e=null)};e.forEach(f=>f.addEventListener("abort",o));const{signal:u}=s;return u.unsubscribe=()=>B.asap(l),u}},_0=function*(e,t){let n=e.byteLength;if(n{const r=v0(e,t);let o=0,a,l=u=>{a||(a=!0,s&&s(u))};return new ReadableStream({async pull(u){try{const{done:f,value:h}=await r.next();if(f){l(),u.close();return}let p=h.byteLength;if(n){let g=o+=p;n(g)}u.enqueue(new Uint8Array(h))}catch(f){throw l(f),f}},cancel(u){return l(u),r.return()}},{highWaterMark:2})},ho=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",mp=ho&&typeof ReadableStream=="function",y0=ho&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),gp=(e,...t)=>{try{return!!e(...t)}catch{return!1}},E0=mp&&gp(()=>{let e=!1;const t=new Request(pt.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),vf=64*1024,al=mp&&gp(()=>B.isReadableStream(new Response("").body)),qi={stream:al&&(e=>e.body)};ho&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!qi[t]&&(qi[t]=B.isFunction(e[t])?n=>n[t]():(n,s)=>{throw new ye(`Response type '${t}' is not supported`,ye.ERR_NOT_SUPPORT,s)})})})(new Response);const w0=async e=>{if(e==null)return 0;if(B.isBlob(e))return e.size;if(B.isSpecCompliantForm(e))return(await new Request(pt.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(B.isArrayBufferView(e)||B.isArrayBuffer(e))return e.byteLength;if(B.isURLSearchParams(e)&&(e=e+""),B.isString(e))return(await y0(e)).byteLength},T0=async(e,t)=>{const n=B.toFiniteNumber(e.getContentLength());return n??w0(t)},A0=ho&&(async e=>{let{url:t,method:n,data:s,signal:r,cancelToken:o,timeout:a,onDownloadProgress:l,onUploadProgress:u,responseType:f,headers:h,withCredentials:p="same-origin",fetchOptions:g}=pp(e);f=f?(f+"").toLowerCase():"text";let _=g0([r,o&&o.toAbortSignal()],a),E;const A=_&&_.unsubscribe&&(()=>{_.unsubscribe()});let H;try{if(u&&E0&&n!=="get"&&n!=="head"&&(H=await T0(h,s))!==0){let q=new Request(t,{method:"POST",body:s,duplex:"half"}),O;if(B.isFormData(s)&&(O=q.headers.get("content-type"))&&h.setContentType(O),q.body){const[R,w]=pf(H,ji(mf(u)));s=_f(q.body,vf,R,w)}}B.isString(p)||(p=p?"include":"omit");const I="credentials"in Request.prototype;E=new Request(t,{...g,signal:_,method:n.toUpperCase(),headers:h.normalize().toJSON(),body:s,duplex:"half",credentials:I?p:void 0});let F=await fetch(E);const k=al&&(f==="stream"||f==="response");if(al&&(l||k&&A)){const q={};["status","statusText","headers"].forEach(S=>{q[S]=F[S]});const O=B.toFiniteNumber(F.headers.get("content-length")),[R,w]=l&&pf(O,ji(mf(l),!0))||[];F=new Response(_f(F.body,vf,R,()=>{w&&w(),A&&A()}),q)}f=f||"text";let U=await qi[B.findKey(qi,f)||"text"](F,e);return!k&&A&&A(),await new Promise((q,O)=>{dp(q,O,{data:U,headers:Ot.from(F.headers),status:F.status,statusText:F.statusText,config:e,request:E})})}catch(I){throw A&&A(),I&&I.name==="TypeError"&&/Load failed|fetch/i.test(I.message)?Object.assign(new ye("Network Error",ye.ERR_NETWORK,e,E),{cause:I.cause||I}):ye.from(I,I&&I.code,e,E)}}),ll={http:Fw,xhr:m0,fetch:A0};B.forEach(ll,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const bf=e=>`- ${e}`,S0=e=>B.isFunction(e)||e===null||e===!1,_p={getAdapter:e=>{e=B.isArray(e)?e:[e];const{length:t}=e;let n,s;const r={};for(let o=0;o`adapter ${l} `+(u===!1?"is not supported by the environment":"is not available in the build"));let a=t?o.length>1?`since : +`+o.map(bf).join(` +`):" "+bf(o[0]):"as no adapter specified";throw new ye("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return s},adapters:ll};function ma(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new sr(null,e)}function yf(e){return ma(e),e.headers=Ot.from(e.headers),e.data=pa.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),_p.getAdapter(e.adapter||Wr.adapter)(e).then(function(s){return ma(e),s.data=pa.call(e,e.transformResponse,s),s.headers=Ot.from(s.headers),s},function(s){return fp(s)||(ma(e),s&&s.response&&(s.response.data=pa.call(e,e.transformResponse,s.response),s.response.headers=Ot.from(s.response.headers))),Promise.reject(s)})}const vp="1.9.0",po={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{po[e]=function(s){return typeof s===e||"a"+(t<1?"n ":" ")+e}});const Ef={};po.transitional=function(t,n,s){function r(o,a){return"[Axios v"+vp+"] Transitional option '"+o+"'"+a+(s?". "+s:"")}return(o,a,l)=>{if(t===!1)throw new ye(r(a," has been removed"+(n?" in "+n:"")),ye.ERR_DEPRECATED);return n&&!Ef[a]&&(Ef[a]=!0,console.warn(r(a," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,a,l):!0}};po.spelling=function(t){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${t}`),!0)};function C0(e,t,n){if(typeof e!="object")throw new ye("options must be an object",ye.ERR_BAD_OPTION_VALUE);const s=Object.keys(e);let r=s.length;for(;r-- >0;){const o=s[r],a=t[o];if(a){const l=e[o],u=l===void 0||a(l,o,e);if(u!==!0)throw new ye("option "+o+" must be "+u,ye.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new ye("Unknown option "+o,ye.ERR_BAD_OPTION)}}const xi={assertOptions:C0,validators:po},tn=xi.validators;let ms=class{constructor(t){this.defaults=t||{},this.interceptors={request:new df,response:new df}}async request(t,n){try{return await this._request(t,n)}catch(s){if(s instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const o=r.stack?r.stack.replace(/^.+\n/,""):"";try{s.stack?o&&!String(s.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(s.stack+=` +`+o):s.stack=o}catch{}}throw s}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=ys(this.defaults,n);const{transitional:s,paramsSerializer:r,headers:o}=n;s!==void 0&&xi.assertOptions(s,{silentJSONParsing:tn.transitional(tn.boolean),forcedJSONParsing:tn.transitional(tn.boolean),clarifyTimeoutError:tn.transitional(tn.boolean)},!1),r!=null&&(B.isFunction(r)?n.paramsSerializer={serialize:r}:xi.assertOptions(r,{encode:tn.function,serialize:tn.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),xi.assertOptions(n,{baseUrl:tn.spelling("baseURL"),withXsrfToken:tn.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let a=o&&B.merge(o.common,o[n.method]);o&&B.forEach(["delete","get","head","post","put","patch","common"],E=>{delete o[E]}),n.headers=Ot.concat(a,o);const l=[];let u=!0;this.interceptors.request.forEach(function(A){typeof A.runWhen=="function"&&A.runWhen(n)===!1||(u=u&&A.synchronous,l.unshift(A.fulfilled,A.rejected))});const f=[];this.interceptors.response.forEach(function(A){f.push(A.fulfilled,A.rejected)});let h,p=0,g;if(!u){const E=[yf.bind(this),void 0];for(E.unshift.apply(E,l),E.push.apply(E,f),g=E.length,h=Promise.resolve(n);p{if(!s._listeners)return;let o=s._listeners.length;for(;o-- >0;)s._listeners[o](r);s._listeners=null}),this.promise.then=r=>{let o;const a=new Promise(l=>{s.subscribe(l),o=l}).then(r);return a.cancel=function(){s.unsubscribe(o)},a},t(function(o,a,l){s.reason||(s.reason=new sr(o,a,l),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=s=>{t.abort(s)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new bp(function(r){t=r}),cancel:t}}};function R0(e){return function(n){return e.apply(null,n)}}function N0(e){return B.isObject(e)&&e.isAxiosError===!0}const cl={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(cl).forEach(([e,t])=>{cl[t]=e});function yp(e){const t=new ms(e),n=Jh(ms.prototype.request,t);return B.extend(n,ms.prototype,t,{allOwnKeys:!0}),B.extend(n,t,null,{allOwnKeys:!0}),n.create=function(r){return yp(ys(e,r))},n}const je=yp(Wr);je.Axios=ms;je.CanceledError=sr;je.CancelToken=O0;je.isCancel=fp;je.VERSION=vp;je.toFormData=fo;je.AxiosError=ye;je.Cancel=je.CanceledError;je.all=function(t){return Promise.all(t)};je.spread=R0;je.isAxiosError=N0;je.mergeConfig=ys;je.AxiosHeaders=Ot;je.formToJSON=e=>up(B.isHTMLForm(e)?new FormData(e):e);je.getAdapter=_p.getAdapter;je.HttpStatusCode=cl;je.default=je;const{Axios:vS,AxiosError:bS,CanceledError:yS,isCancel:ES,CancelToken:wS,VERSION:TS,all:AS,Cancel:SS,isAxiosError:CS,spread:OS,toFormData:RS,AxiosHeaders:NS,HttpStatusCode:xS,formToJSON:$S,getAdapter:PS,mergeConfig:DS}=je,Yr=e=>`${window.location.protocol}//${(window.location.host+window.location.pathname+e).replace(/\/\//g,"/")}`,mo=async(e,t={})=>{try{return(await je.post(Yr(e),t)).data}catch(n){console.log(n);return}},Ki=async(e,t={})=>{try{return(await je.get(Yr(e),t)).data}catch(n){console.log(n);return}},Qt=WE("clientStore",{state:()=>({serverInformation:{},notifications:[],configurations:[],clientProfile:{Email:"",Profile:{}}}),actions:{newNotification(e,t){this.notifications.push({id:Gh().toString(),status:t,content:e,time:Er(),show:!0})},async getClientProfile(){const e=await Ki("/api/settings/getClientProfile");e?this.clientProfile.Profile=e.data:this.newNotification("Failed to fetch client profile","danger")},async getConfigurations(){const e=await Ki("/api/configurations");e?this.configurations=e.data:this.newNotification("Failed to fetch configurations","danger")}}}),rr=(e,t)=>{const n=e.__vccOpts||e;for(const[s,r]of t)n[s]=r;return n},x0={class:"card-body"},$0={class:"d-flex align-items-center mb-2"},P0={class:"ms-auto"},D0={class:"fw-medium"},L0={__name:"notification",props:{notificationData:{id:"",show:!0,content:"",time:"",status:""}},setup(e){const t=e;let n;const s=()=>{t.notificationData.show=!0,n=setTimeout(()=>{o()},5e3)},r=()=>clearTimeout(n),o=()=>t.notificationData.show=!1;return ws(()=>{s()}),(a,l)=>(ve(),Re("div",{onMouseenter:l[1]||(l[1]=u=>r()),onMouseleave:l[2]||(l[2]=u=>e.notificationData.show?s():void 0),class:En([{"text-bg-success":e.notificationData.status==="success","text-bg-warning":e.notificationData.status==="warning","text-bg-danger":e.notificationData.status==="danger"},"card shadow rounded-3 position-relative message ms-auto notification"])},[L("div",x0,[L("div",$0,[L("small",null,Lt(e.notificationData.time.format("hh:mm A")),1),L("small",P0,[L("a",{role:"button",onClick:l[0]||(l[0]=u=>o())},l[3]||(l[3]=[Ye(" Dismiss"),L("i",{class:"bi bi-x-lg ms-2"},null,-1)]))])]),L("span",D0,Lt(e.notificationData.content),1)])],34))}},I0=rr(L0,[["__scopeId","data-v-3303bfcd"]]),M0={class:"messageCentre text-body position-absolute d-flex"},k0={__name:"notificationList",setup(e){const t=Qt(),n=ze(()=>t.notifications.filter(s=>s.show).slice().reverse());return(s,r)=>(ve(),Re("div",M0,[$e(SE,{name:"message",tag:"div",class:"position-relative flex-sm-grow-0 flex-grow-1 d-flex align-items-end ms-sm-auto flex-column gap-2"},{default:St(()=>[(ve(!0),Re(wt,null,to(n.value,o=>(ve(),fn(I0,{notificationData:o,key:o.id},null,8,["notificationData"]))),128))]),_:1})]))}},B0=rr(k0,[["__scopeId","data-v-e4fed80c"]]),F0={"data-bs-theme":"dark",class:"text-body bg-body vw-100 vh-100 bg-body-tertiary"},H0={class:"d-flex vh-100 vw-100 p-sm-4 overflow-y-scroll"},V0={class:"mx-auto my-sm-auto position-relative",id:"listContainer",style:{width:"700px"}},U0={__name:"App",setup(e){const t=Qt();return fetch("/client/api/serverInformation").then(n=>n.json()).then(n=>t.serverInformation=n.data),(n,s)=>{const r=qr("RouterView");return ve(),Re("div",F0,[L("div",H0,[L("div",V0,[(ve(),fn(xh,null,{default:St(()=>[$e(r,null,{default:St(({Component:o})=>[$e(io,{name:"app",type:"transition",mode:"out-in"},{default:St(()=>[(ve(),fn(ay(o)))]),_:2},1024)]),_:1})]),_:1}))])]),$e(B0)])}}},j0=rr(U0,[["__scopeId","data-v-9c24c21b"]]);/*! + * vue-router v4.5.1 + * (c) 2025 Eduardo San Martin Morote + * @license MIT + */const qs=typeof document<"u";function Ep(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function q0(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&Ep(e.default)}const De=Object.assign;function ga(e,t){const n={};for(const s in t){const r=t[s];n[s]=Gt(r)?r.map(e):e(r)}return n}const Nr=()=>{},Gt=Array.isArray,wp=/#/g,K0=/&/g,W0=/\//g,Y0=/=/g,z0=/\?/g,Tp=/\+/g,G0=/%5B/g,J0=/%5D/g,Ap=/%5E/g,Q0=/%60/g,Sp=/%7B/g,X0=/%7C/g,Cp=/%7D/g,Z0=/%20/g;function Vl(e){return encodeURI(""+e).replace(X0,"|").replace(G0,"[").replace(J0,"]")}function eT(e){return Vl(e).replace(Sp,"{").replace(Cp,"}").replace(Ap,"^")}function ul(e){return Vl(e).replace(Tp,"%2B").replace(Z0,"+").replace(wp,"%23").replace(K0,"%26").replace(Q0,"`").replace(Sp,"{").replace(Cp,"}").replace(Ap,"^")}function tT(e){return ul(e).replace(Y0,"%3D")}function nT(e){return Vl(e).replace(wp,"%23").replace(z0,"%3F")}function sT(e){return e==null?"":nT(e).replace(W0,"%2F")}function Fr(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const rT=/\/$/,iT=e=>e.replace(rT,"");function _a(e,t,n="/"){let s,r={},o="",a="";const l=t.indexOf("#");let u=t.indexOf("?");return l=0&&(u=-1),u>-1&&(s=t.slice(0,u),o=t.slice(u+1,l>-1?l:t.length),r=e(o)),l>-1&&(s=s||t.slice(0,l),a=t.slice(l,t.length)),s=cT(s??t,n),{fullPath:s+(o&&"?")+o+a,path:s,query:r,hash:Fr(a)}}function oT(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function wf(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function aT(e,t,n){const s=t.matched.length-1,r=n.matched.length-1;return s>-1&&s===r&&Zs(t.matched[s],n.matched[r])&&Op(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Zs(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Op(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!lT(e[n],t[n]))return!1;return!0}function lT(e,t){return Gt(e)?Tf(e,t):Gt(t)?Tf(t,e):e===t}function Tf(e,t){return Gt(t)?e.length===t.length&&e.every((n,s)=>n===t[s]):e.length===1&&e[0]===t}function cT(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),s=e.split("/"),r=s[s.length-1];(r===".."||r===".")&&s.push("");let o=n.length-1,a,l;for(a=0;a1&&o--;else break;return n.slice(0,o).join("/")+"/"+s.slice(a).join("/")}const Dn={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var Hr;(function(e){e.pop="pop",e.push="push"})(Hr||(Hr={}));var xr;(function(e){e.back="back",e.forward="forward",e.unknown=""})(xr||(xr={}));function uT(e){if(!e)if(qs){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),iT(e)}const fT=/^[^#]+#/;function dT(e,t){return e.replace(fT,"#")+t}function hT(e,t){const n=document.documentElement.getBoundingClientRect(),s=e.getBoundingClientRect();return{behavior:t.behavior,left:s.left-n.left-(t.left||0),top:s.top-n.top-(t.top||0)}}const go=()=>({left:window.scrollX,top:window.scrollY});function pT(e){let t;if("el"in e){const n=e.el,s=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=hT(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Af(e,t){return(history.state?history.state.position-t:-1)+e}const fl=new Map;function mT(e,t){fl.set(e,t)}function gT(e){const t=fl.get(e);return fl.delete(e),t}let _T=()=>location.protocol+"//"+location.host;function Rp(e,t){const{pathname:n,search:s,hash:r}=t,o=e.indexOf("#");if(o>-1){let l=r.includes(e.slice(o))?e.slice(o).length:1,u=r.slice(l);return u[0]!=="/"&&(u="/"+u),wf(u,"")}return wf(n,e)+s+r}function vT(e,t,n,s){let r=[],o=[],a=null;const l=({state:g})=>{const _=Rp(e,location),E=n.value,A=t.value;let H=0;if(g){if(n.value=_,t.value=g,a&&a===E){a=null;return}H=A?g.position-A.position:0}else s(_);r.forEach(I=>{I(n.value,E,{delta:H,type:Hr.pop,direction:H?H>0?xr.forward:xr.back:xr.unknown})})};function u(){a=n.value}function f(g){r.push(g);const _=()=>{const E=r.indexOf(g);E>-1&&r.splice(E,1)};return o.push(_),_}function h(){const{history:g}=window;g.state&&g.replaceState(De({},g.state,{scroll:go()}),"")}function p(){for(const g of o)g();o=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",h)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",h,{passive:!0}),{pauseListeners:u,listen:f,destroy:p}}function Sf(e,t,n,s=!1,r=!1){return{back:e,current:t,forward:n,replaced:s,position:window.history.length,scroll:r?go():null}}function bT(e){const{history:t,location:n}=window,s={value:Rp(e,n)},r={value:t.state};r.value||o(s.value,{back:null,current:s.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function o(u,f,h){const p=e.indexOf("#"),g=p>-1?(n.host&&document.querySelector("base")?e:e.slice(p))+u:_T()+e+u;try{t[h?"replaceState":"pushState"](f,"",g),r.value=f}catch(_){console.error(_),n[h?"replace":"assign"](g)}}function a(u,f){const h=De({},t.state,Sf(r.value.back,u,r.value.forward,!0),f,{position:r.value.position});o(u,h,!0),s.value=u}function l(u,f){const h=De({},r.value,t.state,{forward:u,scroll:go()});o(h.current,h,!0);const p=De({},Sf(s.value,u,null),{position:h.position+1},f);o(u,p,!1),s.value=u}return{location:s,state:r,push:l,replace:a}}function yT(e){e=uT(e);const t=bT(e),n=vT(e,t.state,t.location,t.replace);function s(o,a=!0){a||n.pauseListeners(),history.go(o)}const r=De({location:"",base:e,go:s,createHref:dT.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function ET(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),yT(e)}function wT(e){return typeof e=="string"||e&&typeof e=="object"}function Np(e){return typeof e=="string"||typeof e=="symbol"}const xp=Symbol("");var Cf;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Cf||(Cf={}));function er(e,t){return De(new Error,{type:e,[xp]:!0},t)}function gn(e,t){return e instanceof Error&&xp in e&&(t==null||!!(e.type&t))}const Of="[^/]+?",TT={sensitive:!1,strict:!1,start:!0,end:!0},AT=/[.+*?^${}()[\]/\\]/g;function ST(e,t){const n=De({},TT,t),s=[];let r=n.start?"^":"";const o=[];for(const f of e){const h=f.length?[]:[90];n.strict&&!f.length&&(r+="/");for(let p=0;pt.length?t.length===1&&t[0]===80?1:-1:0}function $p(e,t){let n=0;const s=e.score,r=t.score;for(;n0&&t[t.length-1]<0}const OT={type:0,value:""},RT=/[a-zA-Z0-9_]/;function NT(e){if(!e)return[[]];if(e==="/")return[[OT]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(_){throw new Error(`ERR (${n})/"${f}": ${_}`)}let n=0,s=n;const r=[];let o;function a(){o&&r.push(o),o=[]}let l=0,u,f="",h="";function p(){f&&(n===0?o.push({type:0,value:f}):n===1||n===2||n===3?(o.length>1&&(u==="*"||u==="+")&&t(`A repeatable param (${f}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:f,regexp:h,repeatable:u==="*"||u==="+",optional:u==="*"||u==="?"})):t("Invalid state to consume buffer"),f="")}function g(){f+=u}for(;l{a(k)}:Nr}function a(p){if(Np(p)){const g=s.get(p);g&&(s.delete(p),n.splice(n.indexOf(g),1),g.children.forEach(a),g.alias.forEach(a))}else{const g=n.indexOf(p);g>-1&&(n.splice(g,1),p.record.name&&s.delete(p.record.name),p.children.forEach(a),p.alias.forEach(a))}}function l(){return n}function u(p){const g=LT(p,n);n.splice(g,0,p),p.record.name&&!$f(p)&&s.set(p.record.name,p)}function f(p,g){let _,E={},A,H;if("name"in p&&p.name){if(_=s.get(p.name),!_)throw er(1,{location:p});H=_.record.name,E=De(Nf(g.params,_.keys.filter(k=>!k.optional).concat(_.parent?_.parent.keys.filter(k=>k.optional):[]).map(k=>k.name)),p.params&&Nf(p.params,_.keys.map(k=>k.name))),A=_.stringify(E)}else if(p.path!=null)A=p.path,_=n.find(k=>k.re.test(A)),_&&(E=_.parse(A),H=_.record.name);else{if(_=g.name?s.get(g.name):n.find(k=>k.re.test(g.path)),!_)throw er(1,{location:p,currentLocation:g});H=_.record.name,E=De({},g.params,p.params),A=_.stringify(E)}const I=[];let F=_;for(;F;)I.unshift(F.record),F=F.parent;return{name:H,path:A,params:E,matched:I,meta:DT(I)}}e.forEach(p=>o(p));function h(){n.length=0,s.clear()}return{addRoute:o,resolve:f,removeRoute:a,clearRoutes:h,getRoutes:l,getRecordMatcher:r}}function Nf(e,t){const n={};for(const s of t)s in e&&(n[s]=e[s]);return n}function xf(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:PT(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function PT(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const s in e.components)t[s]=typeof n=="object"?n[s]:n;return t}function $f(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function DT(e){return e.reduce((t,n)=>De(t,n.meta),{})}function Pf(e,t){const n={};for(const s in e)n[s]=s in t?t[s]:e[s];return n}function LT(e,t){let n=0,s=t.length;for(;n!==s;){const o=n+s>>1;$p(e,t[o])<0?s=o:n=o+1}const r=IT(e);return r&&(s=t.lastIndexOf(r,s-1)),s}function IT(e){let t=e;for(;t=t.parent;)if(Pp(t)&&$p(e,t)===0)return t}function Pp({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function MT(e){const t={};if(e===""||e==="?")return t;const s=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;ro&&ul(o)):[s&&ul(s)]).forEach(o=>{o!==void 0&&(t+=(t.length?"&":"")+n,o!=null&&(t+="="+o))})}return t}function kT(e){const t={};for(const n in e){const s=e[n];s!==void 0&&(t[n]=Gt(s)?s.map(r=>r==null?null:""+r):s==null?s:""+s)}return t}const Dp=Symbol(""),Lf=Symbol(""),_o=Symbol(""),Ul=Symbol(""),dl=Symbol("");function vr(){let e=[];function t(s){return e.push(s),()=>{const r=e.indexOf(s);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function BT(e,t,n){const s=()=>{e[t].delete(n)};Nl(s),oh(s),ih(()=>{e[t].add(n)}),e[t].add(n)}function FT(e){const t=It(Dp,{}).value;t&&BT(t,"leaveGuards",e)}function Hn(e,t,n,s,r,o=a=>a()){const a=s&&(s.enterCallbacks[r]=s.enterCallbacks[r]||[]);return()=>new Promise((l,u)=>{const f=g=>{g===!1?u(er(4,{from:n,to:t})):g instanceof Error?u(g):wT(g)?u(er(2,{from:t,to:g})):(a&&s.enterCallbacks[r]===a&&typeof g=="function"&&a.push(g),l())},h=o(()=>e.call(s&&s.instances[r],t,n,f));let p=Promise.resolve(h);e.length<3&&(p=p.then(f)),p.catch(g=>u(g))})}function va(e,t,n,s,r=o=>o()){const o=[];for(const a of e)for(const l in a.components){let u=a.components[l];if(!(t!=="beforeRouteEnter"&&!a.instances[l]))if(Ep(u)){const h=(u.__vccOpts||u)[t];h&&o.push(Hn(h,n,s,a,l,r))}else{let f=u();o.push(()=>f.then(h=>{if(!h)throw new Error(`Couldn't resolve component "${l}" at "${a.path}"`);const p=q0(h)?h.default:h;a.mods[l]=h,a.components[l]=p;const _=(p.__vccOpts||p)[t];return _&&Hn(_,n,s,a,l,r)()}))}}return o}function If(e){const t=It(_o),n=It(Ul),s=ze(()=>{const u=ln(e.to);return t.resolve(u)}),r=ze(()=>{const{matched:u}=s.value,{length:f}=u,h=u[f-1],p=n.matched;if(!h||!p.length)return-1;const g=p.findIndex(Zs.bind(null,h));if(g>-1)return g;const _=Mf(u[f-2]);return f>1&&Mf(h)===_&&p[p.length-1].path!==_?p.findIndex(Zs.bind(null,u[f-2])):g}),o=ze(()=>r.value>-1&&qT(n.params,s.value.params)),a=ze(()=>r.value>-1&&r.value===n.matched.length-1&&Op(n.params,s.value.params));function l(u={}){if(jT(u)){const f=t[ln(e.replace)?"replace":"push"](ln(e.to)).catch(Nr);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>f),f}return Promise.resolve()}return{route:s,href:ze(()=>s.value.href),isActive:o,isExactActive:a,navigate:l}}function HT(e){return e.length===1?e[0]:e}const VT=sh({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:If,setup(e,{slots:t}){const n=Sn(If(e)),{options:s}=It(_o),r=ze(()=>({[kf(e.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[kf(e.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=t.default&&HT(t.default(n));return e.custom?o:Ml("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},o)}}}),UT=VT;function jT(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function qT(e,t){for(const n in t){const s=t[n],r=e[n];if(typeof s=="string"){if(s!==r)return!1}else if(!Gt(r)||r.length!==s.length||s.some((o,a)=>o!==r[a]))return!1}return!0}function Mf(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const kf=(e,t,n)=>e??t??n,KT=sh({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const s=It(dl),r=ze(()=>e.route||s.value),o=It(Lf,0),a=ze(()=>{let f=ln(o);const{matched:h}=r.value;let p;for(;(p=h[f])&&!p.components;)f++;return f}),l=ze(()=>r.value.matched[a.value]);Ai(Lf,ze(()=>a.value+1)),Ai(Dp,l),Ai(dl,r);const u=et();return zs(()=>[u.value,l.value,e.name],([f,h,p],[g,_,E])=>{h&&(h.instances[p]=f,_&&_!==h&&f&&f===g&&(h.leaveGuards.size||(h.leaveGuards=_.leaveGuards),h.updateGuards.size||(h.updateGuards=_.updateGuards))),f&&h&&(!_||!Zs(h,_)||!g)&&(h.enterCallbacks[p]||[]).forEach(A=>A(f))},{flush:"post"}),()=>{const f=r.value,h=e.name,p=l.value,g=p&&p.components[h];if(!g)return Bf(n.default,{Component:g,route:f});const _=p.props[h],E=_?_===!0?f.params:typeof _=="function"?_(f):_:null,H=Ml(g,De({},E,t,{onVnodeUnmounted:I=>{I.component.isUnmounted&&(p.instances[h]=null)},ref:u}));return Bf(n.default,{Component:H,route:f})||H}}});function Bf(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const WT=KT;function YT(e){const t=$T(e.routes,e),n=e.parseQuery||MT,s=e.stringifyQuery||Df,r=e.history,o=vr(),a=vr(),l=vr(),u=Fb(Dn);let f=Dn;qs&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const h=ga.bind(null,V=>""+V),p=ga.bind(null,sT),g=ga.bind(null,Fr);function _(V,T){let te,ie;return Np(V)?(te=t.getRecordMatcher(V),ie=T):ie=V,t.addRoute(ie,te)}function E(V){const T=t.getRecordMatcher(V);T&&t.removeRoute(T)}function A(){return t.getRoutes().map(V=>V.record)}function H(V){return!!t.getRecordMatcher(V)}function I(V,T){if(T=De({},T||u.value),typeof V=="string"){const C=_a(n,V,T.path),K=t.resolve({path:C.path},T),G=r.createHref(C.fullPath);return De(C,K,{params:g(K.params),hash:Fr(C.hash),redirectedFrom:void 0,href:G})}let te;if(V.path!=null)te=De({},V,{path:_a(n,V.path,T.path).path});else{const C=De({},V.params);for(const K in C)C[K]==null&&delete C[K];te=De({},V,{params:p(C)}),T.params=p(T.params)}const ie=t.resolve(te,T),Ee=V.hash||"";ie.params=h(g(ie.params));const v=oT(s,De({},V,{hash:eT(Ee),path:ie.path})),b=r.createHref(v);return De({fullPath:v,hash:Ee,query:s===Df?kT(V.query):V.query||{}},ie,{redirectedFrom:void 0,href:b})}function F(V){return typeof V=="string"?_a(n,V,u.value.path):De({},V)}function k(V,T){if(f!==V)return er(8,{from:T,to:V})}function U(V){return R(V)}function q(V){return U(De(F(V),{replace:!0}))}function O(V){const T=V.matched[V.matched.length-1];if(T&&T.redirect){const{redirect:te}=T;let ie=typeof te=="function"?te(V):te;return typeof ie=="string"&&(ie=ie.includes("?")||ie.includes("#")?ie=F(ie):{path:ie},ie.params={}),De({query:V.query,hash:V.hash,params:ie.path!=null?{}:V.params},ie)}}function R(V,T){const te=f=I(V),ie=u.value,Ee=V.state,v=V.force,b=V.replace===!0,C=O(te);if(C)return R(De(F(C),{state:typeof C=="object"?De({},Ee,C.state):Ee,force:v,replace:b}),T||te);const K=te;K.redirectedFrom=T;let G;return!v&&aT(s,ie,te)&&(G=er(16,{to:K,from:ie}),ge(ie,ie,!0,!1)),(G?Promise.resolve(G):D(K,ie)).catch(N=>gn(N)?gn(N,2)?N:ue(N):J(N,K,ie)).then(N=>{if(N){if(gn(N,2))return R(De({replace:b},F(N.to),{state:typeof N.to=="object"?De({},Ee,N.to.state):Ee,force:v}),T||K)}else N=P(K,ie,!0,b,Ee);return M(K,ie,N),N})}function w(V,T){const te=k(V,T);return te?Promise.reject(te):Promise.resolve()}function S(V){const T=Ie.values().next().value;return T&&typeof T.runWithContext=="function"?T.runWithContext(V):V()}function D(V,T){let te;const[ie,Ee,v]=zT(V,T);te=va(ie.reverse(),"beforeRouteLeave",V,T);for(const C of ie)C.leaveGuards.forEach(K=>{te.push(Hn(K,V,T))});const b=w.bind(null,V,T);return te.push(b),We(te).then(()=>{te=[];for(const C of o.list())te.push(Hn(C,V,T));return te.push(b),We(te)}).then(()=>{te=va(Ee,"beforeRouteUpdate",V,T);for(const C of Ee)C.updateGuards.forEach(K=>{te.push(Hn(K,V,T))});return te.push(b),We(te)}).then(()=>{te=[];for(const C of v)if(C.beforeEnter)if(Gt(C.beforeEnter))for(const K of C.beforeEnter)te.push(Hn(K,V,T));else te.push(Hn(C.beforeEnter,V,T));return te.push(b),We(te)}).then(()=>(V.matched.forEach(C=>C.enterCallbacks={}),te=va(v,"beforeRouteEnter",V,T,S),te.push(b),We(te))).then(()=>{te=[];for(const C of a.list())te.push(Hn(C,V,T));return te.push(b),We(te)}).catch(C=>gn(C,8)?C:Promise.reject(C))}function M(V,T,te){l.list().forEach(ie=>S(()=>ie(V,T,te)))}function P(V,T,te,ie,Ee){const v=k(V,T);if(v)return v;const b=T===Dn,C=qs?history.state:{};te&&(ie||b?r.replace(V.fullPath,De({scroll:b&&C&&C.scroll},Ee)):r.push(V.fullPath,Ee)),u.value=V,ge(V,T,te,b),ue()}let z;function j(){z||(z=r.listen((V,T,te)=>{if(!qe.listening)return;const ie=I(V),Ee=O(ie);if(Ee){R(De(Ee,{replace:!0,force:!0}),ie).catch(Nr);return}f=ie;const v=u.value;qs&&mT(Af(v.fullPath,te.delta),go()),D(ie,v).catch(b=>gn(b,12)?b:gn(b,2)?(R(De(F(b.to),{force:!0}),ie).then(C=>{gn(C,20)&&!te.delta&&te.type===Hr.pop&&r.go(-1,!1)}).catch(Nr),Promise.reject()):(te.delta&&r.go(-te.delta,!1),J(b,ie,v))).then(b=>{b=b||P(ie,v,!1),b&&(te.delta&&!gn(b,8)?r.go(-te.delta,!1):te.type===Hr.pop&&gn(b,20)&&r.go(-1,!1)),M(ie,v,b)}).catch(Nr)}))}let X=vr(),Y=vr(),Q;function J(V,T,te){ue(V);const ie=Y.list();return ie.length?ie.forEach(Ee=>Ee(V,T,te)):console.error(V),Promise.reject(V)}function ce(){return Q&&u.value!==Dn?Promise.resolve():new Promise((V,T)=>{X.add([V,T])})}function ue(V){return Q||(Q=!V,j(),X.list().forEach(([T,te])=>V?te(V):T()),X.reset()),V}function ge(V,T,te,ie){const{scrollBehavior:Ee}=e;if(!qs||!Ee)return Promise.resolve();const v=!te&&gT(Af(V.fullPath,0))||(ie||!te)&&history.state&&history.state.scroll||null;return Xi().then(()=>Ee(V,T,v)).then(b=>b&&pT(b)).catch(b=>J(b,V,T))}const be=V=>r.go(V);let Ne;const Ie=new Set,qe={currentRoute:u,listening:!0,addRoute:_,removeRoute:E,clearRoutes:t.clearRoutes,hasRoute:H,getRoutes:A,resolve:I,options:e,push:U,replace:q,go:be,back:()=>be(-1),forward:()=>be(1),beforeEach:o.add,beforeResolve:a.add,afterEach:l.add,onError:Y.add,isReady:ce,install(V){const T=this;V.component("RouterLink",UT),V.component("RouterView",WT),V.config.globalProperties.$router=T,Object.defineProperty(V.config.globalProperties,"$route",{enumerable:!0,get:()=>ln(u)}),qs&&!Ne&&u.value===Dn&&(Ne=!0,U(r.location).catch(Ee=>{}));const te={};for(const Ee in Dn)Object.defineProperty(te,Ee,{get:()=>u.value[Ee],enumerable:!0});V.provide(_o,T),V.provide(Ul,Ud(te)),V.provide(dl,u);const ie=V.unmount;Ie.add(V),V.unmount=function(){Ie.delete(V),Ie.size<1&&(f=Dn,z&&z(),z=null,u.value=Dn,Ne=!1,Q=!1),ie()}}};function We(V){return V.reduce((T,te)=>T.then(()=>S(te)),Promise.resolve())}return qe}function zT(e,t){const n=[],s=[],r=[],o=Math.max(t.matched.length,e.matched.length);for(let a=0;aZs(f,l))?s.push(l):n.push(l));const u=e.matched[a];u&&(t.matched.find(f=>Zs(f,u))||r.push(u))}return[n,s,r]}function Lp(){return It(_o)}function GT(e){return It(Ul)}var Us={},ba,Ff;function JT(){return Ff||(Ff=1,ba=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}),ba}var ya={},Ln={},Hf;function Ts(){if(Hf)return Ln;Hf=1;let e;const t=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];return Ln.getSymbolSize=function(s){if(!s)throw new Error('"version" cannot be null or undefined');if(s<1||s>40)throw new Error('"version" should be in range from 1 to 40');return s*4+17},Ln.getSymbolTotalCodewords=function(s){return t[s]},Ln.getBCHDigit=function(n){let s=0;for(;n!==0;)s++,n>>>=1;return s},Ln.setToSJISFunction=function(s){if(typeof s!="function")throw new Error('"toSJISFunc" is not a valid function.');e=s},Ln.isKanjiModeEnabled=function(){return typeof e<"u"},Ln.toSJIS=function(s){return e(s)},Ln}var Ea={},Vf;function jl(){return Vf||(Vf=1,function(e){e.L={bit:1},e.M={bit:0},e.Q={bit:3},e.H={bit:2};function t(n){if(typeof n!="string")throw new Error("Param is not a string");switch(n.toLowerCase()){case"l":case"low":return e.L;case"m":case"medium":return e.M;case"q":case"quartile":return e.Q;case"h":case"high":return e.H;default:throw new Error("Unknown EC Level: "+n)}}e.isValid=function(s){return s&&typeof s.bit<"u"&&s.bit>=0&&s.bit<4},e.from=function(s,r){if(e.isValid(s))return s;try{return t(s)}catch{return r}}}(Ea)),Ea}var wa,Uf;function QT(){if(Uf)return wa;Uf=1;function e(){this.buffer=[],this.length=0}return e.prototype={get:function(t){const n=Math.floor(t/8);return(this.buffer[n]>>>7-t%8&1)===1},put:function(t,n){for(let s=0;s>>n-s-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(t){const n=Math.floor(this.length/8);this.buffer.length<=n&&this.buffer.push(0),t&&(this.buffer[n]|=128>>>this.length%8),this.length++}},wa=e,wa}var Ta,jf;function XT(){if(jf)return Ta;jf=1;function e(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new Uint8Array(t*t),this.reservedBit=new Uint8Array(t*t)}return e.prototype.set=function(t,n,s,r){const o=t*this.size+n;this.data[o]=s,r&&(this.reservedBit[o]=!0)},e.prototype.get=function(t,n){return this.data[t*this.size+n]},e.prototype.xor=function(t,n,s){this.data[t*this.size+n]^=s},e.prototype.isReserved=function(t,n){return this.reservedBit[t*this.size+n]},Ta=e,Ta}var Aa={},qf;function ZT(){return qf||(qf=1,function(e){const t=Ts().getSymbolSize;e.getRowColCoords=function(s){if(s===1)return[];const r=Math.floor(s/7)+2,o=t(s),a=o===145?26:Math.ceil((o-13)/(2*r-2))*2,l=[o-7];for(let u=1;u=0&&r<=7},e.from=function(r){return e.isValid(r)?parseInt(r,10):void 0},e.getPenaltyN1=function(r){const o=r.size;let a=0,l=0,u=0,f=null,h=null;for(let p=0;p=5&&(a+=t.N1+(l-5)),f=_,l=1),_=r.get(g,p),_===h?u++:(u>=5&&(a+=t.N1+(u-5)),h=_,u=1)}l>=5&&(a+=t.N1+(l-5)),u>=5&&(a+=t.N1+(u-5))}return a},e.getPenaltyN2=function(r){const o=r.size;let a=0;for(let l=0;l=10&&(l===1488||l===93)&&a++,u=u<<1&2047|r.get(h,f),h>=10&&(u===1488||u===93)&&a++}return a*t.N3},e.getPenaltyN4=function(r){let o=0;const a=r.data.length;for(let u=0;u=0;){const a=o[0];for(let u=0;u0){const l=new Uint8Array(this.degree);return l.set(o,a),l}return o},Ra=t,Ra}var Na={},xa={},$a={},Qf;function Mp(){return Qf||(Qf=1,$a.isValid=function(t){return!isNaN(t)&&t>=1&&t<=40}),$a}var nn={},Xf;function kp(){if(Xf)return nn;Xf=1;const e="[0-9]+",t="[A-Z $%*+\\-./:]+";let n="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";n=n.replace(/u/g,"\\u");const s="(?:(?![A-Z0-9 $%*+\\-./:]|"+n+`)(?:.|[\r +]))+`;nn.KANJI=new RegExp(n,"g"),nn.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),nn.BYTE=new RegExp(s,"g"),nn.NUMERIC=new RegExp(e,"g"),nn.ALPHANUMERIC=new RegExp(t,"g");const r=new RegExp("^"+n+"$"),o=new RegExp("^"+e+"$"),a=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");return nn.testKanji=function(u){return r.test(u)},nn.testNumeric=function(u){return o.test(u)},nn.testAlphanumeric=function(u){return a.test(u)},nn}var Zf;function As(){return Zf||(Zf=1,function(e){const t=Mp(),n=kp();e.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},e.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},e.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},e.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},e.MIXED={bit:-1},e.getCharCountIndicator=function(o,a){if(!o.ccBits)throw new Error("Invalid mode: "+o);if(!t.isValid(a))throw new Error("Invalid version: "+a);return a>=1&&a<10?o.ccBits[0]:a<27?o.ccBits[1]:o.ccBits[2]},e.getBestModeForData=function(o){return n.testNumeric(o)?e.NUMERIC:n.testAlphanumeric(o)?e.ALPHANUMERIC:n.testKanji(o)?e.KANJI:e.BYTE},e.toString=function(o){if(o&&o.id)return o.id;throw new Error("Invalid mode")},e.isValid=function(o){return o&&o.bit&&o.ccBits};function s(r){if(typeof r!="string")throw new Error("Param is not a string");switch(r.toLowerCase()){case"numeric":return e.NUMERIC;case"alphanumeric":return e.ALPHANUMERIC;case"kanji":return e.KANJI;case"byte":return e.BYTE;default:throw new Error("Unknown mode: "+r)}}e.from=function(o,a){if(e.isValid(o))return o;try{return s(o)}catch{return a}}}(xa)),xa}var ed;function iA(){return ed||(ed=1,function(e){const t=Ts(),n=Ip(),s=jl(),r=As(),o=Mp(),a=7973,l=t.getBCHDigit(a);function u(g,_,E){for(let A=1;A<=40;A++)if(_<=e.getCapacity(A,E,g))return A}function f(g,_){return r.getCharCountIndicator(g,_)+4}function h(g,_){let E=0;return g.forEach(function(A){const H=f(A.mode,_);E+=H+A.getBitsLength()}),E}function p(g,_){for(let E=1;E<=40;E++)if(h(g,E)<=e.getCapacity(E,_,r.MIXED))return E}e.from=function(_,E){return o.isValid(_)?parseInt(_,10):E},e.getCapacity=function(_,E,A){if(!o.isValid(_))throw new Error("Invalid QR Code version");typeof A>"u"&&(A=r.BYTE);const H=t.getSymbolTotalCodewords(_),I=n.getTotalCodewordsCount(_,E),F=(H-I)*8;if(A===r.MIXED)return F;const k=F-f(A,_);switch(A){case r.NUMERIC:return Math.floor(k/10*3);case r.ALPHANUMERIC:return Math.floor(k/11*2);case r.KANJI:return Math.floor(k/13);case r.BYTE:default:return Math.floor(k/8)}},e.getBestVersionForData=function(_,E){let A;const H=s.from(E,s.M);if(Array.isArray(_)){if(_.length>1)return p(_,H);if(_.length===0)return 1;A=_[0]}else A=_;return u(A.mode,A.getLength(),H)},e.getEncodedBits=function(_){if(!o.isValid(_)||_<7)throw new Error("Invalid QR Code version");let E=_<<12;for(;t.getBCHDigit(E)-l>=0;)E^=a<=0;)u^=t<0&&(o=this.data.substr(r),a=parseInt(o,10),s.put(a,l*3+1))},La=t,La}var Ia,sd;function lA(){if(sd)return Ia;sd=1;const e=As(),t=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function n(s){this.mode=e.ALPHANUMERIC,this.data=s}return n.getBitsLength=function(r){return 11*Math.floor(r/2)+6*(r%2)},n.prototype.getLength=function(){return this.data.length},n.prototype.getBitsLength=function(){return n.getBitsLength(this.data.length)},n.prototype.write=function(r){let o;for(o=0;o+2<=this.data.length;o+=2){let a=t.indexOf(this.data[o])*45;a+=t.indexOf(this.data[o+1]),r.put(a,11)}this.data.length%2&&r.put(t.indexOf(this.data[o]),6)},Ia=n,Ia}var Ma,rd;function cA(){if(rd)return Ma;rd=1;const e=As();function t(n){this.mode=e.BYTE,typeof n=="string"?this.data=new TextEncoder().encode(n):this.data=new Uint8Array(n)}return t.getBitsLength=function(s){return s*8},t.prototype.getLength=function(){return this.data.length},t.prototype.getBitsLength=function(){return t.getBitsLength(this.data.length)},t.prototype.write=function(n){for(let s=0,r=this.data.length;s=33088&&o<=40956)o-=33088;else if(o>=57408&&o<=60351)o-=49472;else throw new Error("Invalid SJIS character: "+this.data[r]+` +Make sure your charset is UTF-8`);o=(o>>>8&255)*192+(o&255),s.put(o,13)}},ka=n,ka}var Ba={exports:{}},od;function fA(){return od||(od=1,function(e){var t={single_source_shortest_paths:function(n,s,r){var o={},a={};a[s]=0;var l=t.PriorityQueue.make();l.push(s,0);for(var u,f,h,p,g,_,E,A,H;!l.empty();){u=l.pop(),f=u.value,p=u.cost,g=n[f]||{};for(h in g)g.hasOwnProperty(h)&&(_=g[h],E=p+_,A=a[h],H=typeof a[h]>"u",(H||A>E)&&(a[h]=E,l.push(h,E),o[h]=f))}if(typeof r<"u"&&typeof a[r]>"u"){var I=["Could not find a path from ",s," to ",r,"."].join("");throw new Error(I)}return o},extract_shortest_path_from_predecessor_list:function(n,s){for(var r=[],o=s;o;)r.push(o),n[o],o=n[o];return r.reverse(),r},find_path:function(n,s,r){var o=t.single_source_shortest_paths(n,s,r);return t.extract_shortest_path_from_predecessor_list(o,r)},PriorityQueue:{make:function(n){var s=t.PriorityQueue,r={},o;n=n||{};for(o in s)s.hasOwnProperty(o)&&(r[o]=s[o]);return r.queue=[],r.sorter=n.sorter||s.default_sorter,r},default_sorter:function(n,s){return n.cost-s.cost},push:function(n,s){var r={value:n,cost:s};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};e.exports=t}(Ba)),Ba.exports}var ad;function dA(){return ad||(ad=1,function(e){const t=As(),n=aA(),s=lA(),r=cA(),o=uA(),a=kp(),l=Ts(),u=fA();function f(I){return unescape(encodeURIComponent(I)).length}function h(I,F,k){const U=[];let q;for(;(q=I.exec(k))!==null;)U.push({data:q[0],index:q.index,mode:F,length:q[0].length});return U}function p(I){const F=h(a.NUMERIC,t.NUMERIC,I),k=h(a.ALPHANUMERIC,t.ALPHANUMERIC,I);let U,q;return l.isKanjiModeEnabled()?(U=h(a.BYTE,t.BYTE,I),q=h(a.KANJI,t.KANJI,I)):(U=h(a.BYTE_KANJI,t.BYTE,I),q=[]),F.concat(k,U,q).sort(function(R,w){return R.index-w.index}).map(function(R){return{data:R.data,mode:R.mode,length:R.length}})}function g(I,F){switch(F){case t.NUMERIC:return n.getBitsLength(I);case t.ALPHANUMERIC:return s.getBitsLength(I);case t.KANJI:return o.getBitsLength(I);case t.BYTE:return r.getBitsLength(I)}}function _(I){return I.reduce(function(F,k){const U=F.length-1>=0?F[F.length-1]:null;return U&&U.mode===k.mode?(F[F.length-1].data+=k.data,F):(F.push(k),F)},[])}function E(I){const F=[];for(let k=0;k=0&&z<=6&&(j===0||j===6)||j>=0&&j<=6&&(z===0||z===6)||z>=2&&z<=4&&j>=2&&j<=4?O.set(M+z,P+j,!0,!0):O.set(M+z,P+j,!1,!0))}}function E(O){const R=O.size;for(let w=8;w>z&1)===1,O.set(D,M,P,!0),O.set(M,D,P,!0)}function I(O,R,w){const S=O.size,D=h.getEncodedBits(R,w);let M,P;for(M=0;M<15;M++)P=(D>>M&1)===1,M<6?O.set(M,8,P,!0):M<8?O.set(M+1,8,P,!0):O.set(S-15+M,8,P,!0),M<8?O.set(8,S-M-1,P,!0):M<9?O.set(8,15-M-1+1,P,!0):O.set(8,15-M-1,P,!0);O.set(S-8,8,1,!0)}function F(O,R){const w=O.size;let S=-1,D=w-1,M=7,P=0;for(let z=w-1;z>0;z-=2)for(z===6&&z--;;){for(let j=0;j<2;j++)if(!O.isReserved(D,z-j)){let X=!1;P>>M&1)===1),O.set(D,z-j,X),M--,M===-1&&(P++,M=7)}if(D+=S,D<0||w<=D){D-=S,S=-S;break}}}function k(O,R,w){const S=new n;w.forEach(function(j){S.put(j.mode.bit,4),S.put(j.getLength(),p.getCharCountIndicator(j.mode,O)),j.write(S)});const D=e.getSymbolTotalCodewords(O),M=l.getTotalCodewordsCount(O,R),P=(D-M)*8;for(S.getLengthInBits()+4<=P&&S.put(0,4);S.getLengthInBits()%8!==0;)S.putBit(0);const z=(P-S.getLengthInBits())/8;for(let j=0;j=7&&H(j,R),F(j,P),isNaN(S)&&(S=a.getBestMask(j,I.bind(null,j,w))),a.applyMask(S,j),I(j,w,S),{modules:j,version:R,errorCorrectionLevel:w,maskPattern:S,segments:D}}return ya.create=function(R,w){if(typeof R>"u"||R==="")throw new Error("No input text");let S=t.M,D,M;return typeof w<"u"&&(S=t.from(w.errorCorrectionLevel,t.M),D=f.from(w.version),M=a.from(w.maskPattern),w.toSJISFunc&&e.setToSJISFunction(w.toSJISFunc)),q(R,D,S,M)},ya}var Fa={},Ha={},cd;function Bp(){return cd||(cd=1,function(e){function t(n){if(typeof n=="number"&&(n=n.toString()),typeof n!="string")throw new Error("Color should be defined as hex string");let s=n.slice().replace("#","").split("");if(s.length<3||s.length===5||s.length>8)throw new Error("Invalid hex color: "+n);(s.length===3||s.length===4)&&(s=Array.prototype.concat.apply([],s.map(function(o){return[o,o]}))),s.length===6&&s.push("F","F");const r=parseInt(s.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+s.slice(0,6).join("")}}e.getOptions=function(s){s||(s={}),s.color||(s.color={});const r=typeof s.margin>"u"||s.margin===null||s.margin<0?4:s.margin,o=s.width&&s.width>=21?s.width:void 0,a=s.scale||4;return{width:o,scale:o?4:a,margin:r,color:{dark:t(s.color.dark||"#000000ff"),light:t(s.color.light||"#ffffffff")},type:s.type,rendererOpts:s.rendererOpts||{}}},e.getScale=function(s,r){return r.width&&r.width>=s+r.margin*2?r.width/(s+r.margin*2):r.scale},e.getImageWidth=function(s,r){const o=e.getScale(s,r);return Math.floor((s+r.margin*2)*o)},e.qrToImageData=function(s,r,o){const a=r.modules.size,l=r.modules.data,u=e.getScale(a,o),f=Math.floor((a+o.margin*2)*u),h=o.margin*u,p=[o.color.light,o.color.dark];for(let g=0;g=h&&_>=h&&g"u"&&(!a||!a.getContext)&&(u=a,a=void 0),a||(f=s()),u=t.getOptions(u);const h=t.getImageWidth(o.modules.size,u),p=f.getContext("2d"),g=p.createImageData(h,h);return t.qrToImageData(g.data,o,u),n(p,f,h),p.putImageData(g,0,0),f},e.renderToDataURL=function(o,a,l){let u=l;typeof u>"u"&&(!a||!a.getContext)&&(u=a,a=void 0),u||(u={});const f=e.render(o,a,u),h=u.type||"image/png",p=u.rendererOpts||{};return f.toDataURL(h,p.quality)}}(Fa)),Fa}var Va={},fd;function mA(){if(fd)return Va;fd=1;const e=Bp();function t(r,o){const a=r.a/255,l=o+'="'+r.hex+'"';return a<1?l+" "+o+'-opacity="'+a.toFixed(2).slice(1)+'"':l}function n(r,o,a){let l=r+o;return typeof a<"u"&&(l+=" "+a),l}function s(r,o,a){let l="",u=0,f=!1,h=0;for(let p=0;p0&&g>0&&r[p-1]||(l+=f?n("M",g+a,.5+_+a):n("m",u,0),u=0,f=!1),g+1':"",_="',E='viewBox="0 0 '+p+" "+p+'"',H=''+g+_+` +`;return typeof l=="function"&&l(null,H),H},Va}var dd;function gA(){if(dd)return Us;dd=1;const e=JT(),t=hA(),n=pA(),s=mA();function r(o,a,l,u,f){const h=[].slice.call(arguments,1),p=h.length,g=typeof h[p-1]=="function";if(!g&&!e())throw new Error("Callback required as last argument");if(g){if(p<2)throw new Error("Too few arguments provided");p===2?(f=l,l=a,a=u=void 0):p===3&&(a.getContext&&typeof f>"u"?(f=u,u=void 0):(f=u,u=l,l=a,a=void 0))}else{if(p<1)throw new Error("Too few arguments provided");return p===1?(l=a,a=u=void 0):p===2&&!a.getContext&&(u=l,l=a,a=void 0),new Promise(function(_,E){try{const A=t.create(l,u);_(o(A,a,u))}catch(A){E(A)}})}try{const _=t.create(l,u);f(null,o(_,a,u))}catch(_){f(_)}}return Us.create=t.create,Us.toCanvas=r.bind(null,n.render),Us.toDataURL=r.bind(null,n.renderToDataURL),Us.toString=r.bind(null,function(o,a,l){return s.render(o,l)}),Us}var _A=gA();const vA=kl(_A),bA=["id"],Fp={__name:"qrcode",props:["content"],setup(e){const t=e,n=Gh().toString();return ws(()=>{vA.toCanvas(document.getElementById(`qrcode_${n}`),t.content,function(s){})}),(s,r)=>(ve(),Re("div",null,[L("canvas",{id:"qrcode_"+ln(n),class:"rounded-3"},null,8,bA)]))}},yA={class:"p-2 position-fixed top-0 start-0 vw-100 vh-100 d-flex qrcodeContainer p-3 overflow-scroll"},EA={class:"m-auto d-flex gap-3 flex-column p-3"},wA={__name:"configurationQRCode",props:["qrcodeData"],emits:["back"],setup(e,{emit:t}){const n=e,s=t;return(r,o)=>(ve(),Re("div",yA,[L("div",EA,[L("div",null,[L("a",{role:"button",onClick:o[0]||(o[0]=a=>s("back")),class:"btn btn-body rounded-3 btn-sm"},o[1]||(o[1]=[L("i",{class:"me-2 bi bi-x-lg"},null,-1),Ye(" Dismiss ")]))]),$e(Fp,{content:n.qrcodeData},null,8,["content"]),o[2]||(o[2]=L("button",{class:"btn bg-primary-subtle border-primary-subtle rounded-3"},[L("i",{class:"bi bi-download me-2"}),Ye("Download ")],-1))])]))}},TA=rr(wA,[["__scopeId","data-v-cc8c55c7"]]);var $i={exports:{}},AA=$i.exports,hd;function SA(){return hd||(hd=1,function(e,t){(function(n,s){e.exports=s()})(AA,function(){var n,s,r=1e3,o=6e4,a=36e5,l=864e5,u=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,f=31536e6,h=2628e6,p=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,g={years:f,months:h,days:l,hours:a,minutes:o,seconds:r,milliseconds:1,weeks:6048e5},_=function(O){return O instanceof U},E=function(O,R,w){return new U(O,w,R.$l)},A=function(O){return s.p(O)+"s"},H=function(O){return O<0},I=function(O){return H(O)?Math.ceil(O):Math.floor(O)},F=function(O){return Math.abs(O)},k=function(O,R){return O?H(O)?{negative:!0,format:""+F(O)+R}:{negative:!1,format:""+O+R}:{negative:!1,format:""}},U=function(){function O(w,S,D){var M=this;if(this.$d={},this.$l=D,w===void 0&&(this.$ms=0,this.parseFromMilliseconds()),S)return E(w*g[A(S)],this);if(typeof w=="number")return this.$ms=w,this.parseFromMilliseconds(),this;if(typeof w=="object")return Object.keys(w).forEach(function(j){M.$d[A(j)]=w[j]}),this.calMilliseconds(),this;if(typeof w=="string"){var P=w.match(p);if(P){var z=P.slice(2).map(function(j){return j!=null?Number(j):0});return this.$d.years=z[0],this.$d.months=z[1],this.$d.weeks=z[2],this.$d.days=z[3],this.$d.hours=z[4],this.$d.minutes=z[5],this.$d.seconds=z[6],this.calMilliseconds(),this}}return this}var R=O.prototype;return R.calMilliseconds=function(){var w=this;this.$ms=Object.keys(this.$d).reduce(function(S,D){return S+(w.$d[D]||0)*g[D]},0)},R.parseFromMilliseconds=function(){var w=this.$ms;this.$d.years=I(w/f),w%=f,this.$d.months=I(w/h),w%=h,this.$d.days=I(w/l),w%=l,this.$d.hours=I(w/a),w%=a,this.$d.minutes=I(w/o),w%=o,this.$d.seconds=I(w/r),w%=r,this.$d.milliseconds=w},R.toISOString=function(){var w=k(this.$d.years,"Y"),S=k(this.$d.months,"M"),D=+this.$d.days||0;this.$d.weeks&&(D+=7*this.$d.weeks);var M=k(D,"D"),P=k(this.$d.hours,"H"),z=k(this.$d.minutes,"M"),j=this.$d.seconds||0;this.$d.milliseconds&&(j+=this.$d.milliseconds/1e3,j=Math.round(1e3*j)/1e3);var X=k(j,"S"),Y=w.negative||S.negative||M.negative||P.negative||z.negative||X.negative,Q=P.format||z.format||X.format?"T":"",J=(Y?"-":"")+"P"+w.format+S.format+M.format+Q+P.format+z.format+X.format;return J==="P"||J==="-P"?"P0D":J},R.toJSON=function(){return this.toISOString()},R.format=function(w){var S=w||"YYYY-MM-DDTHH:mm:ss",D={Y:this.$d.years,YY:s.s(this.$d.years,2,"0"),YYYY:s.s(this.$d.years,4,"0"),M:this.$d.months,MM:s.s(this.$d.months,2,"0"),D:this.$d.days,DD:s.s(this.$d.days,2,"0"),H:this.$d.hours,HH:s.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:s.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:s.s(this.$d.seconds,2,"0"),SSS:s.s(this.$d.milliseconds,3,"0")};return S.replace(u,function(M,P){return P||String(D[M])})},R.as=function(w){return this.$ms/g[A(w)]},R.get=function(w){var S=this.$ms,D=A(w);return D==="milliseconds"?S%=1e3:S=D==="weeks"?I(S/g[D]):this.$d[D],S||0},R.add=function(w,S,D){var M;return M=S?w*g[A(S)]:_(w)?w.$ms:E(w,this).$ms,E(this.$ms+M*(D?-1:1),this)},R.subtract=function(w,S){return this.add(w,S,!0)},R.locale=function(w){var S=this.clone();return S.$l=w,S},R.clone=function(){return E(this.$ms,this)},R.humanize=function(w){return n().add(this.$ms,"ms").locale(this.$l).fromNow(!w)},R.valueOf=function(){return this.asMilliseconds()},R.milliseconds=function(){return this.get("milliseconds")},R.asMilliseconds=function(){return this.as("milliseconds")},R.seconds=function(){return this.get("seconds")},R.asSeconds=function(){return this.as("seconds")},R.minutes=function(){return this.get("minutes")},R.asMinutes=function(){return this.as("minutes")},R.hours=function(){return this.get("hours")},R.asHours=function(){return this.as("hours")},R.days=function(){return this.get("days")},R.asDays=function(){return this.as("days")},R.weeks=function(){return this.get("weeks")},R.asWeeks=function(){return this.as("weeks")},R.months=function(){return this.get("months")},R.asMonths=function(){return this.as("months")},R.years=function(){return this.get("years")},R.asYears=function(){return this.as("years")},O}(),q=function(O,R,w){return O.add(R.years()*w,"y").add(R.months()*w,"M").add(R.days()*w,"d").add(R.hours()*w,"h").add(R.minutes()*w,"m").add(R.seconds()*w,"s").add(R.milliseconds()*w,"ms")};return function(O,R,w){n=w,s=w().$utils(),w.duration=function(M,P){var z=w.locale();return E(M,{$l:z},P)},w.isDuration=_;var S=R.prototype.add,D=R.prototype.subtract;R.prototype.add=function(M,P){return _(M)?q(this,M,1):S.bind(this)(M,P)},R.prototype.subtract=function(M,P){return _(M)?q(this,M,-1):D.bind(this)(M,P)}}})}($i)),$i.exports}var CA=SA();const OA=kl(CA),RA={class:"card rounded-3 border shadow"},NA={class:"card-header border-0 align-items-center d-flex p-3 flex-column flex-sm-row gap-2"},xA={class:"fw-bold"},$A={class:"card-body p-3 d-flex gap-3 flex-column"},PA={class:"mb-1 d-flex align-items-center"},DA={class:"fw-bold ms-sm-auto"},LA={class:"progress",role:"progressbar","aria-valuenow":"25","aria-valuemin":"0","aria-valuemax":"100",style:{height:"6px"}},IA={class:"mb-1 d-flex align-items-center"},MA={class:"fw-bold ms-auto"},kA={__name:"configuration",props:["config"],setup(e){Er.extend(OA);const t=e,n=et(!1),s=ze(()=>t.config.jobs.filter(u=>u.Field==="date").sort((u,f)=>Er(u.Value).isBefore(f.Value)?-1:Er(u.Value).isAfter(f.Value)?1:0)),r=ze(()=>t.config.jobs.filter(u=>u.Field==="total_data").sort((u,f)=>parseFloat(f.Value)-parseFloat(u.Value))),o=ze(()=>{if(s.value.length>0)return s.value[0].Value}),a=ze(()=>{if(r.value.length>0)return r.value[0].Value}),l=ze(()=>a.value?t.config.data/a.value*100:100);return window.dayjs=Er,(u,f)=>(ve(),Re("div",RA,[L("div",NA,[L("small",xA,Lt(t.config.name),1),t.config.protocol==="wg"?(ve(),Re("span",{key:0,class:En(["badge rounded-3 shadow ms-sm-auto",[t.config.protocol==="wg"?"wireguardBg":"amneziawgBg"]])},Lt(t.config.protocol==="wg"?"WireGuard":"AmneziaWG"),3)):vs("",!0)]),L("div",$A,[L("div",null,[L("div",PA,[f[2]||(f[2]=L("small",{class:"text-muted"},[L("i",{class:"bi bi-bar-chart-fill me-1"}),Ye(" Data Usage ")],-1)),L("small",DA,Lt(t.config.data.toFixed(4))+" / "+Lt(a.value?parseFloat(a.value).toFixed(4):"Unlimited")+" GB ",1)]),L("div",LA,[L("div",{class:"progress-bar bg-primary",style:Ji({width:""+l.value+"%"})},null,4)])]),L("div",null,[L("div",IA,[f[3]||(f[3]=L("small",{class:"text-muted"},[L("i",{class:"bi bi-calendar me-1"}),Ye(" Valid Until ")],-1)),L("small",MA,Lt(o.value?o.value:"Unlimited Time"),1)])]),L("button",{class:"btn btn-outline-body rounded-3 flex-grow-1 fw-bold w-100",onClick:f[0]||(f[0]=h=>n.value=!0)},f[4]||(f[4]=[L("i",{class:"bi bi-link-45deg me-2"},null,-1),L("small",null,"Connect",-1)]))]),$e(io,{name:"app"},{default:St(()=>[n.value?(ve(),fn(TA,{key:0,onBack:f[1]||(f[1]=h=>n.value=!1),"qrcode-data":e.config.peer_configuration_data.file},null,8,["qrcode-data"])):vs("",!0)]),_:1})]))}},BA=rr(kA,[["__scopeId","data-v-5ea45ad6"]]),FA={class:"p-sm-3"},HA={class:"w-100 d-flex align-items-center"},VA={class:"ms-auto px-3 d-flex gap-2 nav-links"},UA={key:0,class:"d-flex flex-column gap-3"},jA={class:"p-3 d-flex flex-column gap-3"},qA={key:1,class:"d-flex py-4"},KA={__name:"index",setup(e){const t=Qt(),n=et(!0),s=ze(()=>t.configurations),r=et(void 0);return ws(async()=>{await t.getConfigurations(),n.value=!1,r.value=setInterval(async()=>{await t.getConfigurations()},5e3)}),FT(()=>{clearInterval(r.value)}),(o,a)=>{const l=qr("RouterLink");return ve(),Re("div",FA,[L("div",HA,[a[2]||(a[2]=L("a",{class:"nav-link text-body border-start-0","aria-current":"page",href:"#"},[L("strong",null,"WGDashboard Client")],-1)),L("div",VA,[$e(l,{to:"/settings",class:"text-body btn btn-outline-body rounded-3 ms-auto btn-sm","aria-current":"page",href:"#"},{default:St(()=>a[0]||(a[0]=[L("i",{class:"bi bi-gear-fill me-sm-2"},null,-1),L("span",null,"Settings",-1)])),_:1,__:[0]}),$e(l,{to:"/signout",class:"btn btn-outline-danger rounded-3 btn-sm","aria-current":"page"},{default:St(()=>a[1]||(a[1]=[L("i",{class:"bi bi-box-arrow-left me-sm-2"},null,-1),L("span",null,"Sign Out",-1)])),_:1,__:[1]})])]),$e(io,{name:"app",mode:"out-in"},{default:St(()=>[n.value?(ve(),Re("div",qA,a[3]||(a[3]=[L("div",{class:"spinner-border m-auto"},null,-1)]))):(ve(),Re("div",UA,[L("div",jA,[(ve(!0),Re(wt,null,to(s.value,u=>(ve(),fn(BA,{config:u},null,8,["config"]))),256))])]))]),_:1})])}}},WA=rr(KA,[["__scopeId","data-v-2372f633"]]),YA=["href"],zA={__name:"oidcBtn",props:["provider","name"],async setup(e){let t,n;const s=e,r=et(!1),o=et({}),a=new URLSearchParams({client_id:s.provider.client_id,redirect_uri:window.location.protocol+"//"+window.location.host+window.location.pathname,response_type:"code",state:s.name,scope:"openid email"}).toString(),l=et(void 0);try{const u=([t,n]=xl(()=>je(`${s.provider.issuer}/.well-known/openid-configuration`)),t=await t,n(),t);console.log(u),r.value=!0,o.value=u.data,console.log(o.value),l.value=new URL(o.value.authorization_endpoint),l.value.search=a}catch{console.log("Provider not available",s.provider)}return(u,f)=>r.value?(ve(),Re("a",{key:0,class:"btn btn-sm btn-outline-body rounded-3",href:l.value,style:{flex:"1 1 0px"}},Lt(e.name),9,YA)):vs("",!0)}},GA={key:0,class:"d-flex gap-2"},JA={__name:"oidc",async setup(e){let t,n;const s=et(!1),r=et(void 0),o=([t,n]=xl(()=>Ki("/api/signin/oidc/providers")),t=await t,n(),t);return o&&(s.value=!0,r.value=o.data,console.log(r.value)),(a,l)=>r.value?(ve(),Re("div",GA,[(ve(),fn(xh,null,{default:St(()=>[(ve(!0),Re(wt,null,to(r.value,(u,f)=>(ve(),fn(zA,{provider:u,name:f},null,8,["provider","name"]))),256))]),_:1}))])):vs("",!0)}},QA={class:"form-floating"},XA=["disabled"],ZA={class:"form-floating"},e1=["disabled"],t1=["disabled"],n1={key:0,class:"d-block"},s1={key:1,class:"d-block"},r1={class:"d-flex align-items-center"},i1={__name:"signInForm",emits:["totpToken"],setup(e,{emit:t}){const n=et(!1),s=Sn({Email:"",Password:""}),r=t;et("");const o=Qt(),a=async f=>{if(f.preventDefault(),!l){o.newNotification("Please fill in all fields","warning");return}n.value=!0;const h=await mo("/api/signin",s);h.status?r("totpToken",h.message):(o.newNotification(h.message,"danger"),n.value=!1)},l=ze(()=>Object.values(s).find(f=>!f)===void 0),u=GT();return u.query.Email&&(s.Email=u.query.Email),(f,h)=>{const p=qr("RouterLink");return ve(),Re("div",null,[h[10]||(h[10]=L("div",{class:"text-center"},[L("h1",{class:"display-4"},"Welcome back"),L("p",{class:"text-muted"},[Ye("Sign in to access your "),L("strong",null,"WGDashboard Client"),Ye(" account")])],-1)),$e(JA),L("form",{class:"mt-4 d-flex flex-column gap-3",onSubmit:h[2]||(h[2]=g=>a(g))},[L("div",QA,[cn(L("input",{type:"text",required:"",disabled:n.value,"onUpdate:modelValue":h[0]||(h[0]=g=>s.Email=g),name:"email",autocomplete:"email",autofocus:"",class:"form-control rounded-3 border-0",id:"email",placeholder:"email"},null,8,XA),[[wn,s.Email]]),h[3]||(h[3]=L("label",{for:"email",class:"d-flex"},[L("i",{class:"bi bi-person-circle me-2"}),Ye(" Email ")],-1))]),L("div",ZA,[cn(L("input",{type:"password",required:"",disabled:n.value,"onUpdate:modelValue":h[1]||(h[1]=g=>s.Password=g),name:"password",autocomplete:"current-password",class:"form-control rounded-3 border-0",id:"password",placeholder:"Password"},null,8,e1),[[wn,s.Password]]),h[4]||(h[4]=L("label",{for:"password",class:"d-flex"},[L("i",{class:"bi bi-key me-2"}),Ye(" Password ")],-1))]),h[6]||(h[6]=L("div",{class:"d-flex"},[L("a",{href:"#",class:"text-body text-decoration-none ms-auto btn btn-sm rounded-3"}," Forgot Password? ")],-1)),L("button",{disabled:!l.value||n.value,class:"btn btn-primary rounded-3 btn-body px-3 py-2 fw-bold"},[n.value?(ve(),Re("span",s1,h[5]||(h[5]=[Ye(" Loading..."),L("i",{class:"ms-2 spinner-border spinner-border-sm"},null,-1)]))):(ve(),Re("span",n1," Sign In "))],8,t1)],32),L("div",null,[h[9]||(h[9]=L("hr",{class:"my-4"},null,-1)),L("div",r1,[h[8]||(h[8]=L("span",{class:"text-muted"}," Don't have an account yet? ",-1)),$e(p,{to:"/signup",class:"text-body text-decoration-none ms-auto fw-bold btn btn-sm btn-outline-body rounded-3"},{default:St(()=>h[7]||(h[7]=[Ye(" Sign Up ")])),_:1,__:[7]})])])])}}},o1={class:""},a1={key:0,class:"card rounded-3"},l1={class:"card-body d-flex gap-3 flex-column"},c1={class:"card rounded-3"},u1={class:"card-body"},f1=["href"],d1={key:0},h1={class:"d-flex flex-column gap-3"},p1=["disabled"],m1=["disabled"],g1={key:0,class:"d-block"},_1={key:1,class:"d-block"},v1={__name:"totpForm",props:["totpToken"],emits:["clearToken"],setup(e,{emit:t}){const n=e,s=et(""),r=Sn({TOTP:""}),o=et(!0),a=()=>{r.TOTP=r.TOTP.replace(/\D/i,"")},l=ze(()=>/^[0-9]{6}$/.test(r.TOTP)),u=Qt(),f=Lp();ws(()=>{je.get(Yr("/api/signin/totp"),{params:{Token:n.totpToken}}).then(g=>{let _=g.data;o.value=!1,_.status?_.message&&(s.value=_.message):(u.newNotification(_.message,"danger"),f.push("/signin"))})});const h=t,p=async g=>{if(g&&g.preventDefault(),l){o.value=!0;const _=await mo("/api/signin/totp",{Token:n.totpToken,UserProvidedTOTP:r.TOTP});o.value=!1,_?_.status?(u.clientProfile=_.data,f.push("/")):u.newNotification(_.message,"danger"):(u.newNotification("Sign in status is invalid","danger"),h("clearToken"))}};return zs(l,()=>{p()}),(g,_)=>(ve(),Re("form",{class:"d-flex flex-column gap-3",onSubmit:_[3]||(_[3]=E=>p(E))},[L("div",null,[L("a",{role:"button",onClick:_[0]||(_[0]=E=>h("clearToken")),class:"btn btn-outline-body btn-sm rounded-3"},_[4]||(_[4]=[L("i",{class:"me-2 bi bi-chevron-left"},null,-1),Ye(" Back ")]))]),L("div",o1,[_[9]||(_[9]=L("h1",{class:"mb-3"},"Multi-Factor Authentication (MFA)",-1)),s.value?(ve(),Re("div",a1,[L("div",l1,[_[5]||(_[5]=L("h2",{class:"mb-0"},"Initial Setup",-1)),_[6]||(_[6]=L("p",{class:"mb-0"},"Please scan the following QR Code to generate TOTP with your choice of authenticator",-1)),$e(Fp,{content:s.value},null,8,["content"]),_[7]||(_[7]=L("p",{class:"mb-0"},"Or you can click the link below:",-1)),L("div",c1,[L("div",u1,[L("a",{href:s.value},Lt(s.value),9,f1)])]),_[8]||(_[8]=L("div",{class:"alert alert-warning mb-0"},[L("strong",null," Please note: You won't be able to see this QR Code again, so please save it somewhere safe in case you need to recover your TOTP key ")],-1))])])):vs("",!0)]),s.value?(ve(),Re("hr",d1)):vs("",!0),L("div",h1,[_[12]||(_[12]=L("label",{for:"totp"},"Enter the TOTP generated by your authenticator to verify",-1)),cn(L("input",{class:"form-control form-control-lg rounded-3 text-center",id:"totp",disabled:o.value,autofocus:"",onKeyup:_[1]||(_[1]=E=>a()),maxlength:"6",type:"text",inputmode:"numeric",placeholder:"- - - - - -",autocomplete:"one-time-code","onUpdate:modelValue":_[2]||(_[2]=E=>r.TOTP=E)},null,40,p1),[[wn,r.TOTP]]),L("button",{disabled:!l.value||o.value,class:"btn btn-body rounded-3 px-3 py-2 fw-bold"},[o.value?(ve(),Re("span",_1,_[11]||(_[11]=[Ye(" Loading... "),L("i",{class:"ms-2 spinner-border spinner-border-sm"},null,-1)]))):(ve(),Re("span",g1,_[10]||(_[10]=[Ye(" Continue "),L("i",{class:"ms-2 bi bi-arrow-right"},null,-1)])))],8,m1)])],32))}},b1={class:"p-3 p-sm-5"},y1={__name:"signin",setup(e){const t=et("");return(n,s)=>(ve(),Re("div",b1,[$e(io,{name:"app",mode:"out-in"},{default:St(()=>[t.value?(ve(),fn(v1,{key:1,onClearToken:s[1]||(s[1]=r=>t.value=""),"totp-token":t.value},null,8,["totp-token"])):(ve(),fn(i1,{key:0,onTotpToken:s[0]||(s[0]=r=>{t.value=r})}))]),_:1})]))}},E1={class:"p-3 p-sm-5"},w1={class:"form-floating"},T1=["disabled"],A1={class:"row gx-3"},S1={class:"col-6"},C1={class:"form-floating"},O1=["disabled"],R1={class:"col-6"},N1={class:"form-floating"},x1=["disabled"],$1=["disabled"],P1={key:0,class:"d-block"},D1={key:1,class:"d-block"},L1={class:"d-flex align-items-center"},I1={__name:"signup",setup(e){const t=Qt(),n=Sn({Email:"",Password:"",ConfirmPassword:""}),s=et(!1),r=Lp(),o=async u=>{if(u.preventDefault(),!l){t.newNotification("Please fill in all fields","warning");return}a&&(s.value=!0,await je.post(Yr("/api/signup"),n).then(f=>{let h=f.data;h.status?(t.newNotification("Sign up successfully!","success"),r.push({path:"/signin",query:{Email:n.Email}})):(t.newNotification(h.message,"danger"),s.value=!1)}))},a=ze(()=>n.Password&&n.ConfirmPassword?n.Password===n.ConfirmPassword:!1),l=ze(()=>Object.values(n).find(u=>!u)===void 0);return ws(()=>{document.querySelectorAll("input[type=password]").forEach(u=>u.addEventListener("blur",()=>{n.Password&&n.ConfirmPassword&&document.querySelectorAll("input[type=password]").forEach(f=>{a.value?f.classList.remove("is-invalid"):f.classList.add("is-invalid")})}))}),(u,f)=>{const h=qr("RouterLink");return ve(),Re("div",E1,[f[13]||(f[13]=L("div",{class:"text-center"},[L("h1",{class:"display-4"},"Hi, nice to meet you"),L("p",{class:"text-muted"},[Ye("Sign up to use "),L("strong",null,"WGDashboard Client")])],-1)),L("form",{class:"mt-4 d-flex flex-column gap-3",onSubmit:f[3]||(f[3]=p=>o(p))},[L("div",w1,[cn(L("input",{type:"text",disabled:s.value,required:"","onUpdate:modelValue":f[0]||(f[0]=p=>n.Email=p),name:"email",autocomplete:"email",autofocus:"",class:"form-control rounded-3",id:"email",placeholder:"email"},null,8,T1),[[wn,n.Email]]),f[4]||(f[4]=L("label",{for:"email",class:"d-flex"},[L("i",{class:"bi bi-person-circle me-2"}),Ye(" Email ")],-1))]),L("div",A1,[L("div",S1,[L("div",C1,[cn(L("input",{type:"password",required:"",disabled:s.value,"onUpdate:modelValue":f[1]||(f[1]=p=>n.Password=p),name:"password",autocomplete:"new-password",autofocus:"",class:"form-control rounded-3",id:"password",placeholder:"password"},null,8,O1),[[wn,n.Password]]),f[5]||(f[5]=L("label",{for:"password",class:"d-flex"},[L("i",{class:"bi bi-key me-2"}),Ye(" Password ")],-1))])]),L("div",R1,[L("div",N1,[cn(L("input",{type:"password",required:"",disabled:s.value,"onUpdate:modelValue":f[2]||(f[2]=p=>n.ConfirmPassword=p),name:"confirm_password",autocomplete:"new-password",autofocus:"",class:"form-control rounded-3",id:"confirm_password",placeholder:"confirm_password"},null,8,x1),[[wn,n.ConfirmPassword]]),f[6]||(f[6]=L("label",{for:"confirm_password",class:"d-flex"},[L("i",{class:"bi bi-key me-2"}),Ye(" Confirm Password ")],-1)),f[7]||(f[7]=L("div",{id:"validationServer03Feedback",class:"invalid-feedback"}," Passwords does not match ",-1))])])]),L("button",{disabled:!l.value||!a.value||s.value,class:"btn btn-primary rounded-3 btn-body px-3 py-2 fw-bold"},[s.value?(ve(),Re("span",D1,f[9]||(f[9]=[Ye(" Loading... "),L("i",{class:"spinner-border spinner-border-sm"},null,-1)]))):(ve(),Re("span",P1,f[8]||(f[8]=[Ye(" Continue "),L("i",{class:"ms-2 bi bi-arrow-right"},null,-1)])))],8,$1)],32),L("div",null,[f[12]||(f[12]=L("hr",{class:"my-4"},null,-1)),L("div",L1,[f[11]||(f[11]=L("span",{class:"text-muted"}," Already have an account? ",-1)),$e(h,{to:"/signin",class:"text-body text-decoration-none ms-auto fw-bold btn btn-sm btn-outline-body rounded-3"},{default:St(()=>f[10]||(f[10]=[Ye(" Sign In ")])),_:1,__:[10]})])])])}}},M1={class:"p-3"},k1={class:"row g-2"},B1={class:"col-sm-6"},F1=["for"],H1=["id","onUpdate:modelValue"],V1={__name:"profile",setup(e){const t=Qt(),n={Firstname:"First Name",Lastname:"Last Name"};return(s,r)=>(ve(),Re("div",M1,[r[0]||(r[0]=L("h5",null," Profile ",-1)),L("div",k1,[(ve(!0),Re(wt,null,to(ln(t).clientProfile.Profile,(o,a)=>(ve(),Re("div",B1,[L("label",{for:a,class:"text-muted form-label"},[L("small",null,Lt(n[a]),1)],8,F1),cn(L("input",{id:a,class:"form-control rounded-3","onUpdate:modelValue":l=>ln(t).clientProfile.Profile[a]=l},null,8,H1),[[wn,ln(t).clientProfile.Profile[a]]])]))),256))])]))}},U1={class:"d-flex align-items-start"},j1={key:0,class:"alert alert-danger rounded-3 mt-3"},q1={class:"row g-2 mb-3"},K1={class:"col-sm-12"},W1=["type"],Y1={class:"col-sm-6"},z1=["type"],G1={class:"col-sm-6"},J1=["type"],Q1={__name:"updatePassword",setup(e){const t=Sn({CurrentPassword:"",NewPassword:"",ConfirmNewPassword:""}),n=()=>{t.CurrentPassword="",t.NewPassword="",t.ConfirmNewPassword=""},s=Qt(),r=async u=>{u.preventDefault(),document.querySelectorAll("#updatePasswordForm input").forEach(h=>h.blur());const f=await mo("/api/settings/updatePassword",t);f?f.status?(a.value=!1,s.newNotification("Password updated!","success"),n()):(a.value=!0,l.value=f.message):(a.value=!0,l.value="Error occurred")},o=et(!1),a=et(!1),l=et("");return(u,f)=>(ve(),Re("form",{onSubmit:f[4]||(f[4]=h=>r(h)),id:"updatePasswordForm",onReset:f[5]||(f[5]=h=>n()),class:"p-3"},[L("div",U1,[f[6]||(f[6]=L("h5",null," Update Password ",-1)),L("a",{role:"button",onClick:f[0]||(f[0]=h=>o.value=!o.value),class:"text-muted ms-auto text-decoration-none"},[L("small",null,[L("i",{class:En([[o.value?"bi-eye-slash-fill":"bi-eye-fill"],"bi me-2"])},null,2),Ye(Lt(o.value?"Hide":"Show")+" Password ",1)])])]),a.value?(ve(),Re("div",j1,Lt(l.value),1)):vs("",!0),L("div",q1,[L("div",K1,[f[7]||(f[7]=L("label",{class:"text-muted form-label",for:"CurrentPassword"},[L("small",null,"Current Password")],-1)),cn(L("input",{class:En(["form-control rounded-3",{"is-invalid":a.value}]),required:"",type:o.value?"text":"password",autocomplete:"current-password",id:"CurrentPassword","onUpdate:modelValue":f[1]||(f[1]=h=>t.CurrentPassword=h)},null,10,W1),[[ua,t.CurrentPassword]])]),L("div",Y1,[f[8]||(f[8]=L("label",{class:"text-muted form-label",for:"NewPassword"},[L("small",null,"New Password")],-1)),cn(L("input",{class:En(["form-control rounded-3",{"is-invalid":a.value}]),required:"",type:o.value?"text":"password",id:"NewPassword",autocomplete:"new-password","onUpdate:modelValue":f[2]||(f[2]=h=>t.NewPassword=h)},null,10,z1),[[ua,t.NewPassword]])]),L("div",G1,[f[9]||(f[9]=L("label",{class:"text-muted form-label",for:"ConfirmNewPassword"},[L("small",null,"Confirm New Password")],-1)),cn(L("input",{class:En(["form-control rounded-3",{"is-invalid":a.value}]),required:"",type:o.value?"text":"password",id:"ConfirmNewPassword",autocomplete:"new-password","onUpdate:modelValue":f[3]||(f[3]=h=>t.ConfirmNewPassword=h)},null,10,J1),[[ua,t.ConfirmNewPassword]])])]),f[10]||(f[10]=L("div",{class:"d-flex gap-2"},[L("button",{class:"btn btn-sm btn-secondary rounded-3 ms-auto",type:"reset"},"Clear"),L("button",{class:"btn btn-sm btn-danger rounded-3",type:"submit"},"Update")],-1))],32))}},X1={class:"p-sm-3"},Z1={class:"w-100 d-flex align-items-center p-3"},eS={__name:"settings",async setup(e){let t,n;const s=Qt();return[t,n]=xl(()=>s.getClientProfile()),await t,n(),(r,o)=>{const a=qr("RouterLink");return ve(),Re("div",X1,[L("div",Z1,[$e(a,{to:"/",class:"text-body btn btn-outline-body rounded-3 btn-sm","aria-current":"page",href:"#"},{default:St(()=>o[0]||(o[0]=[L("i",{class:"bi bi-chevron-left me-sm-2"},null,-1),L("span",null,"Back",-1)])),_:1,__:[0]}),o[1]||(o[1]=L("strong",{class:"ms-auto"},"Settings",-1))]),$e(V1),$e(Q1)])}}},ql=YT({history:ET(),routes:[{path:"/",component:WA,meta:{auth:!0},name:"Home"},{path:"/settings",component:eS,meta:{auth:!0},name:"Settings"},{path:"/signin",component:y1,name:"Sign In"},{path:"/signup",component:I1,name:"Sign Up"},{path:"/signout",name:"Sign Out"}]});ql.beforeEach(async(e,t,n)=>{const s=Qt();e.path==="/signout"?(await je.get(Yr("/api/signout")).then(()=>{n("/signin")}).catch(()=>{n("/signin")}),s.newNotification("Sign in session ended, please sign in again","warning")):e.meta.auth?await Ki("/api/validateAuthentication")?n():(s.newNotification("Sign in session ended, please sign in again","warning"),n("/signin")):n()});ql.afterEach((e,t,n)=>{document.title=e.name+" | WGDashboard Client"});var Pi={exports:{}};/*! + * Bootstrap v5.3.6 (https://getbootstrap.com/) + * Copyright 2011-2025 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */var tS=Pi.exports,pd;function nS(){return pd||(pd=1,function(e,t){(function(n,s){e.exports=s()})(tS,function(){const n=new Map,s={set(d,i,c){n.has(d)||n.set(d,new Map);const m=n.get(d);if(!m.has(i)&&m.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(m.keys())[0]}.`);return}m.set(i,c)},get(d,i){return n.has(d)&&n.get(d).get(i)||null},remove(d,i){if(!n.has(d))return;const c=n.get(d);c.delete(i),c.size===0&&n.delete(d)}},r=1e6,o=1e3,a="transitionend",l=d=>(d&&window.CSS&&window.CSS.escape&&(d=d.replace(/#([^\s"#']+)/g,(i,c)=>`#${CSS.escape(c)}`)),d),u=d=>d==null?`${d}`:Object.prototype.toString.call(d).match(/\s([a-z]+)/i)[1].toLowerCase(),f=d=>{do d+=Math.floor(Math.random()*r);while(document.getElementById(d));return d},h=d=>{if(!d)return 0;let{transitionDuration:i,transitionDelay:c}=window.getComputedStyle(d);const m=Number.parseFloat(i),y=Number.parseFloat(c);return!m&&!y?0:(i=i.split(",")[0],c=c.split(",")[0],(Number.parseFloat(i)+Number.parseFloat(c))*o)},p=d=>{d.dispatchEvent(new Event(a))},g=d=>!d||typeof d!="object"?!1:(typeof d.jquery<"u"&&(d=d[0]),typeof d.nodeType<"u"),_=d=>g(d)?d.jquery?d[0]:d:typeof d=="string"&&d.length>0?document.querySelector(l(d)):null,E=d=>{if(!g(d)||d.getClientRects().length===0)return!1;const i=getComputedStyle(d).getPropertyValue("visibility")==="visible",c=d.closest("details:not([open])");if(!c)return i;if(c!==d){const m=d.closest("summary");if(m&&m.parentNode!==c||m===null)return!1}return i},A=d=>!d||d.nodeType!==Node.ELEMENT_NODE||d.classList.contains("disabled")?!0:typeof d.disabled<"u"?d.disabled:d.hasAttribute("disabled")&&d.getAttribute("disabled")!=="false",H=d=>{if(!document.documentElement.attachShadow)return null;if(typeof d.getRootNode=="function"){const i=d.getRootNode();return i instanceof ShadowRoot?i:null}return d instanceof ShadowRoot?d:d.parentNode?H(d.parentNode):null},I=()=>{},F=d=>{d.offsetHeight},k=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,U=[],q=d=>{document.readyState==="loading"?(U.length||document.addEventListener("DOMContentLoaded",()=>{for(const i of U)i()}),U.push(d)):d()},O=()=>document.documentElement.dir==="rtl",R=d=>{q(()=>{const i=k();if(i){const c=d.NAME,m=i.fn[c];i.fn[c]=d.jQueryInterface,i.fn[c].Constructor=d,i.fn[c].noConflict=()=>(i.fn[c]=m,d.jQueryInterface)}})},w=(d,i=[],c=d)=>typeof d=="function"?d.call(...i):c,S=(d,i,c=!0)=>{if(!c){w(d);return}const y=h(i)+5;let x=!1;const $=({target:W})=>{W===i&&(x=!0,i.removeEventListener(a,$),w(d))};i.addEventListener(a,$),setTimeout(()=>{x||p(i)},y)},D=(d,i,c,m)=>{const y=d.length;let x=d.indexOf(i);return x===-1?!c&&m?d[y-1]:d[0]:(x+=c?1:-1,m&&(x=(x+y)%y),d[Math.max(0,Math.min(x,y-1))])},M=/[^.]*(?=\..*)\.|.*/,P=/\..*/,z=/::\d+$/,j={};let X=1;const Y={mouseenter:"mouseover",mouseleave:"mouseout"},Q=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function J(d,i){return i&&`${i}::${X++}`||d.uidEvent||X++}function ce(d){const i=J(d);return d.uidEvent=i,j[i]=j[i]||{},j[i]}function ue(d,i){return function c(m){return te(m,{delegateTarget:d}),c.oneOff&&T.off(d,m.type,i),i.apply(d,[m])}}function ge(d,i,c){return function m(y){const x=d.querySelectorAll(i);for(let{target:$}=y;$&&$!==this;$=$.parentNode)for(const W of x)if(W===$)return te(y,{delegateTarget:$}),m.oneOff&&T.off(d,y.type,i,c),c.apply($,[y])}}function be(d,i,c=null){return Object.values(d).find(m=>m.callable===i&&m.delegationSelector===c)}function Ne(d,i,c){const m=typeof i=="string",y=m?c:i||c;let x=V(d);return Q.has(x)||(x=d),[m,y,x]}function Ie(d,i,c,m,y){if(typeof i!="string"||!d)return;let[x,$,W]=Ne(i,c,m);i in Y&&($=(Ve=>function(Se){if(!Se.relatedTarget||Se.relatedTarget!==Se.delegateTarget&&!Se.delegateTarget.contains(Se.relatedTarget))return Ve.call(this,Se)})($));const ee=ce(d),le=ee[W]||(ee[W]={}),ne=be(le,$,x?c:null);if(ne){ne.oneOff=ne.oneOff&&y;return}const Te=J($,i.replace(M,"")),Ae=x?ge(d,c,$):ue(d,$);Ae.delegationSelector=x?c:null,Ae.callable=$,Ae.oneOff=y,Ae.uidEvent=Te,le[Te]=Ae,d.addEventListener(W,Ae,x)}function qe(d,i,c,m,y){const x=be(i[c],m,y);x&&(d.removeEventListener(c,x,!!y),delete i[c][x.uidEvent])}function We(d,i,c,m){const y=i[c]||{};for(const[x,$]of Object.entries(y))x.includes(m)&&qe(d,i,c,$.callable,$.delegationSelector)}function V(d){return d=d.replace(P,""),Y[d]||d}const T={on(d,i,c,m){Ie(d,i,c,m,!1)},one(d,i,c,m){Ie(d,i,c,m,!0)},off(d,i,c,m){if(typeof i!="string"||!d)return;const[y,x,$]=Ne(i,c,m),W=$!==i,ee=ce(d),le=ee[$]||{},ne=i.startsWith(".");if(typeof x<"u"){if(!Object.keys(le).length)return;qe(d,ee,$,x,y?c:null);return}if(ne)for(const Te of Object.keys(ee))We(d,ee,Te,i.slice(1));for(const[Te,Ae]of Object.entries(le)){const _e=Te.replace(z,"");(!W||i.includes(_e))&&qe(d,ee,$,Ae.callable,Ae.delegationSelector)}},trigger(d,i,c){if(typeof i!="string"||!d)return null;const m=k(),y=V(i),x=i!==y;let $=null,W=!0,ee=!0,le=!1;x&&m&&($=m.Event(i,c),m(d).trigger($),W=!$.isPropagationStopped(),ee=!$.isImmediatePropagationStopped(),le=$.isDefaultPrevented());const ne=te(new Event(i,{bubbles:W,cancelable:!0}),c);return le&&ne.preventDefault(),ee&&d.dispatchEvent(ne),ne.defaultPrevented&&$&&$.preventDefault(),ne}};function te(d,i={}){for(const[c,m]of Object.entries(i))try{d[c]=m}catch{Object.defineProperty(d,c,{configurable:!0,get(){return m}})}return d}function ie(d){if(d==="true")return!0;if(d==="false")return!1;if(d===Number(d).toString())return Number(d);if(d===""||d==="null")return null;if(typeof d!="string")return d;try{return JSON.parse(decodeURIComponent(d))}catch{return d}}function Ee(d){return d.replace(/[A-Z]/g,i=>`-${i.toLowerCase()}`)}const v={setDataAttribute(d,i,c){d.setAttribute(`data-bs-${Ee(i)}`,c)},removeDataAttribute(d,i){d.removeAttribute(`data-bs-${Ee(i)}`)},getDataAttributes(d){if(!d)return{};const i={},c=Object.keys(d.dataset).filter(m=>m.startsWith("bs")&&!m.startsWith("bsConfig"));for(const m of c){let y=m.replace(/^bs/,"");y=y.charAt(0).toLowerCase()+y.slice(1),i[y]=ie(d.dataset[m])}return i},getDataAttribute(d,i){return ie(d.getAttribute(`data-bs-${Ee(i)}`))}};class b{static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(i){return i=this._mergeConfigObj(i),i=this._configAfterMerge(i),this._typeCheckConfig(i),i}_configAfterMerge(i){return i}_mergeConfigObj(i,c){const m=g(c)?v.getDataAttribute(c,"config"):{};return{...this.constructor.Default,...typeof m=="object"?m:{},...g(c)?v.getDataAttributes(c):{},...typeof i=="object"?i:{}}}_typeCheckConfig(i,c=this.constructor.DefaultType){for(const[m,y]of Object.entries(c)){const x=i[m],$=g(x)?"element":u(x);if(!new RegExp(y).test($))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${m}" provided type "${$}" but expected type "${y}".`)}}}const C="5.3.6";class K extends b{constructor(i,c){super(),i=_(i),i&&(this._element=i,this._config=this._getConfig(c),s.set(this._element,this.constructor.DATA_KEY,this))}dispose(){s.remove(this._element,this.constructor.DATA_KEY),T.off(this._element,this.constructor.EVENT_KEY);for(const i of Object.getOwnPropertyNames(this))this[i]=null}_queueCallback(i,c,m=!0){S(i,c,m)}_getConfig(i){return i=this._mergeConfigObj(i,this._element),i=this._configAfterMerge(i),this._typeCheckConfig(i),i}static getInstance(i){return s.get(_(i),this.DATA_KEY)}static getOrCreateInstance(i,c={}){return this.getInstance(i)||new this(i,typeof c=="object"?c:null)}static get VERSION(){return C}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(i){return`${i}${this.EVENT_KEY}`}}const G=d=>{let i=d.getAttribute("data-bs-target");if(!i||i==="#"){let c=d.getAttribute("href");if(!c||!c.includes("#")&&!c.startsWith("."))return null;c.includes("#")&&!c.startsWith("#")&&(c=`#${c.split("#")[1]}`),i=c&&c!=="#"?c.trim():null}return i?i.split(",").map(c=>l(c)).join(","):null},N={find(d,i=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(i,d))},findOne(d,i=document.documentElement){return Element.prototype.querySelector.call(i,d)},children(d,i){return[].concat(...d.children).filter(c=>c.matches(i))},parents(d,i){const c=[];let m=d.parentNode.closest(i);for(;m;)c.push(m),m=m.parentNode.closest(i);return c},prev(d,i){let c=d.previousElementSibling;for(;c;){if(c.matches(i))return[c];c=c.previousElementSibling}return[]},next(d,i){let c=d.nextElementSibling;for(;c;){if(c.matches(i))return[c];c=c.nextElementSibling}return[]},focusableChildren(d){const i=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(c=>`${c}:not([tabindex^="-"])`).join(",");return this.find(i,d).filter(c=>!A(c)&&E(c))},getSelectorFromElement(d){const i=G(d);return i&&N.findOne(i)?i:null},getElementFromSelector(d){const i=G(d);return i?N.findOne(i):null},getMultipleElementsFromSelector(d){const i=G(d);return i?N.find(i):[]}},oe=(d,i="hide")=>{const c=`click.dismiss${d.EVENT_KEY}`,m=d.NAME;T.on(document,c,`[data-bs-dismiss="${m}"]`,function(y){if(["A","AREA"].includes(this.tagName)&&y.preventDefault(),A(this))return;const x=N.getElementFromSelector(this)||this.closest(`.${m}`);d.getOrCreateInstance(x)[i]()})},re="alert",Z=".bs.alert",he=`close${Z}`,ae=`closed${Z}`,fe="fade",pe="show";class we extends K{static get NAME(){return re}close(){if(T.trigger(this._element,he).defaultPrevented)return;this._element.classList.remove(pe);const c=this._element.classList.contains(fe);this._queueCallback(()=>this._destroyElement(),this._element,c)}_destroyElement(){this._element.remove(),T.trigger(this._element,ae),this.dispose()}static jQueryInterface(i){return this.each(function(){const c=we.getOrCreateInstance(this);if(typeof i=="string"){if(c[i]===void 0||i.startsWith("_")||i==="constructor")throw new TypeError(`No method named "${i}"`);c[i](this)}})}}oe(we,"close"),R(we);const Me="button",mt=".bs.button",ut=".data-api",Mt="active",Rt='[data-bs-toggle="button"]',Wn=`click${mt}${ut}`;class On extends K{static get NAME(){return Me}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(Mt))}static jQueryInterface(i){return this.each(function(){const c=On.getOrCreateInstance(this);i==="toggle"&&c[i]()})}}T.on(document,Wn,Rt,d=>{d.preventDefault();const i=d.target.closest(Rt);On.getOrCreateInstance(i).toggle()}),R(On);const gt="swipe",it=".bs.swipe",zr=`touchstart${it}`,Vp=`touchmove${it}`,Up=`touchend${it}`,jp=`pointerdown${it}`,qp=`pointerup${it}`,Kp="touch",Wp="pen",Yp="pointer-event",zp=40,Gp={endCallback:null,leftCallback:null,rightCallback:null},Jp={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class Gr extends b{constructor(i,c){super(),this._element=i,!(!i||!Gr.isSupported())&&(this._config=this._getConfig(c),this._deltaX=0,this._supportPointerEvents=!!window.PointerEvent,this._initEvents())}static get Default(){return Gp}static get DefaultType(){return Jp}static get NAME(){return gt}dispose(){T.off(this._element,it)}_start(i){if(!this._supportPointerEvents){this._deltaX=i.touches[0].clientX;return}this._eventIsPointerPenTouch(i)&&(this._deltaX=i.clientX)}_end(i){this._eventIsPointerPenTouch(i)&&(this._deltaX=i.clientX-this._deltaX),this._handleSwipe(),w(this._config.endCallback)}_move(i){this._deltaX=i.touches&&i.touches.length>1?0:i.touches[0].clientX-this._deltaX}_handleSwipe(){const i=Math.abs(this._deltaX);if(i<=zp)return;const c=i/this._deltaX;this._deltaX=0,c&&w(c>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(T.on(this._element,jp,i=>this._start(i)),T.on(this._element,qp,i=>this._end(i)),this._element.classList.add(Yp)):(T.on(this._element,zr,i=>this._start(i)),T.on(this._element,Vp,i=>this._move(i)),T.on(this._element,Up,i=>this._end(i)))}_eventIsPointerPenTouch(i){return this._supportPointerEvents&&(i.pointerType===Wp||i.pointerType===Kp)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const Qp="carousel",Rn=".bs.carousel",Kl=".data-api",Xp="ArrowLeft",Zp="ArrowRight",em=500,ir="next",Ss="prev",Cs="left",Jr="right",tm=`slide${Rn}`,vo=`slid${Rn}`,nm=`keydown${Rn}`,sm=`mouseenter${Rn}`,rm=`mouseleave${Rn}`,im=`dragstart${Rn}`,om=`load${Rn}${Kl}`,am=`click${Rn}${Kl}`,Wl="carousel",Qr="active",lm="slide",cm="carousel-item-end",um="carousel-item-start",fm="carousel-item-next",dm="carousel-item-prev",Yl=".active",zl=".carousel-item",hm=Yl+zl,pm=".carousel-item img",mm=".carousel-indicators",gm="[data-bs-slide], [data-bs-slide-to]",_m='[data-bs-ride="carousel"]',vm={[Xp]:Jr,[Zp]:Cs},bm={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},ym={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class Os extends K{constructor(i,c){super(i,c),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=N.findOne(mm,this._element),this._addEventListeners(),this._config.ride===Wl&&this.cycle()}static get Default(){return bm}static get DefaultType(){return ym}static get NAME(){return Qp}next(){this._slide(ir)}nextWhenVisible(){!document.hidden&&E(this._element)&&this.next()}prev(){this._slide(Ss)}pause(){this._isSliding&&p(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval(()=>this.nextWhenVisible(),this._config.interval)}_maybeEnableCycle(){if(this._config.ride){if(this._isSliding){T.one(this._element,vo,()=>this.cycle());return}this.cycle()}}to(i){const c=this._getItems();if(i>c.length-1||i<0)return;if(this._isSliding){T.one(this._element,vo,()=>this.to(i));return}const m=this._getItemIndex(this._getActive());if(m===i)return;const y=i>m?ir:Ss;this._slide(y,c[i])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(i){return i.defaultInterval=i.interval,i}_addEventListeners(){this._config.keyboard&&T.on(this._element,nm,i=>this._keydown(i)),this._config.pause==="hover"&&(T.on(this._element,sm,()=>this.pause()),T.on(this._element,rm,()=>this._maybeEnableCycle())),this._config.touch&&Gr.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const m of N.find(pm,this._element))T.on(m,im,y=>y.preventDefault());const c={leftCallback:()=>this._slide(this._directionToOrder(Cs)),rightCallback:()=>this._slide(this._directionToOrder(Jr)),endCallback:()=>{this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(()=>this._maybeEnableCycle(),em+this._config.interval))}};this._swipeHelper=new Gr(this._element,c)}_keydown(i){if(/input|textarea/i.test(i.target.tagName))return;const c=vm[i.key];c&&(i.preventDefault(),this._slide(this._directionToOrder(c)))}_getItemIndex(i){return this._getItems().indexOf(i)}_setActiveIndicatorElement(i){if(!this._indicatorsElement)return;const c=N.findOne(Yl,this._indicatorsElement);c.classList.remove(Qr),c.removeAttribute("aria-current");const m=N.findOne(`[data-bs-slide-to="${i}"]`,this._indicatorsElement);m&&(m.classList.add(Qr),m.setAttribute("aria-current","true"))}_updateInterval(){const i=this._activeElement||this._getActive();if(!i)return;const c=Number.parseInt(i.getAttribute("data-bs-interval"),10);this._config.interval=c||this._config.defaultInterval}_slide(i,c=null){if(this._isSliding)return;const m=this._getActive(),y=i===ir,x=c||D(this._getItems(),m,y,this._config.wrap);if(x===m)return;const $=this._getItemIndex(x),W=_e=>T.trigger(this._element,_e,{relatedTarget:x,direction:this._orderToDirection(i),from:this._getItemIndex(m),to:$});if(W(tm).defaultPrevented||!m||!x)return;const le=!!this._interval;this.pause(),this._isSliding=!0,this._setActiveIndicatorElement($),this._activeElement=x;const ne=y?um:cm,Te=y?fm:dm;x.classList.add(Te),F(x),m.classList.add(ne),x.classList.add(ne);const Ae=()=>{x.classList.remove(ne,Te),x.classList.add(Qr),m.classList.remove(Qr,Te,ne),this._isSliding=!1,W(vo)};this._queueCallback(Ae,m,this._isAnimated()),le&&this.cycle()}_isAnimated(){return this._element.classList.contains(lm)}_getActive(){return N.findOne(hm,this._element)}_getItems(){return N.find(zl,this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(i){return O()?i===Cs?Ss:ir:i===Cs?ir:Ss}_orderToDirection(i){return O()?i===Ss?Cs:Jr:i===Ss?Jr:Cs}static jQueryInterface(i){return this.each(function(){const c=Os.getOrCreateInstance(this,i);if(typeof i=="number"){c.to(i);return}if(typeof i=="string"){if(c[i]===void 0||i.startsWith("_")||i==="constructor")throw new TypeError(`No method named "${i}"`);c[i]()}})}}T.on(document,am,gm,function(d){const i=N.getElementFromSelector(this);if(!i||!i.classList.contains(Wl))return;d.preventDefault();const c=Os.getOrCreateInstance(i),m=this.getAttribute("data-bs-slide-to");if(m){c.to(m),c._maybeEnableCycle();return}if(v.getDataAttribute(this,"slide")==="next"){c.next(),c._maybeEnableCycle();return}c.prev(),c._maybeEnableCycle()}),T.on(window,om,()=>{const d=N.find(_m);for(const i of d)Os.getOrCreateInstance(i)}),R(Os);const Em="collapse",or=".bs.collapse",wm=".data-api",Tm=`show${or}`,Am=`shown${or}`,Sm=`hide${or}`,Cm=`hidden${or}`,Om=`click${or}${wm}`,bo="show",Rs="collapse",Xr="collapsing",Rm="collapsed",Nm=`:scope .${Rs} .${Rs}`,xm="collapse-horizontal",$m="width",Pm="height",Dm=".collapse.show, .collapse.collapsing",yo='[data-bs-toggle="collapse"]',Lm={parent:null,toggle:!0},Im={parent:"(null|element)",toggle:"boolean"};class Ns extends K{constructor(i,c){super(i,c),this._isTransitioning=!1,this._triggerArray=[];const m=N.find(yo);for(const y of m){const x=N.getSelectorFromElement(y),$=N.find(x).filter(W=>W===this._element);x!==null&&$.length&&this._triggerArray.push(y)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return Lm}static get DefaultType(){return Im}static get NAME(){return Em}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let i=[];if(this._config.parent&&(i=this._getFirstLevelChildren(Dm).filter(W=>W!==this._element).map(W=>Ns.getOrCreateInstance(W,{toggle:!1}))),i.length&&i[0]._isTransitioning||T.trigger(this._element,Tm).defaultPrevented)return;for(const W of i)W.hide();const m=this._getDimension();this._element.classList.remove(Rs),this._element.classList.add(Xr),this._element.style[m]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const y=()=>{this._isTransitioning=!1,this._element.classList.remove(Xr),this._element.classList.add(Rs,bo),this._element.style[m]="",T.trigger(this._element,Am)},$=`scroll${m[0].toUpperCase()+m.slice(1)}`;this._queueCallback(y,this._element,!0),this._element.style[m]=`${this._element[$]}px`}hide(){if(this._isTransitioning||!this._isShown()||T.trigger(this._element,Sm).defaultPrevented)return;const c=this._getDimension();this._element.style[c]=`${this._element.getBoundingClientRect()[c]}px`,F(this._element),this._element.classList.add(Xr),this._element.classList.remove(Rs,bo);for(const y of this._triggerArray){const x=N.getElementFromSelector(y);x&&!this._isShown(x)&&this._addAriaAndCollapsedClass([y],!1)}this._isTransitioning=!0;const m=()=>{this._isTransitioning=!1,this._element.classList.remove(Xr),this._element.classList.add(Rs),T.trigger(this._element,Cm)};this._element.style[c]="",this._queueCallback(m,this._element,!0)}_isShown(i=this._element){return i.classList.contains(bo)}_configAfterMerge(i){return i.toggle=!!i.toggle,i.parent=_(i.parent),i}_getDimension(){return this._element.classList.contains(xm)?$m:Pm}_initializeChildren(){if(!this._config.parent)return;const i=this._getFirstLevelChildren(yo);for(const c of i){const m=N.getElementFromSelector(c);m&&this._addAriaAndCollapsedClass([c],this._isShown(m))}}_getFirstLevelChildren(i){const c=N.find(Nm,this._config.parent);return N.find(i,this._config.parent).filter(m=>!c.includes(m))}_addAriaAndCollapsedClass(i,c){if(i.length)for(const m of i)m.classList.toggle(Rm,!c),m.setAttribute("aria-expanded",c)}static jQueryInterface(i){const c={};return typeof i=="string"&&/show|hide/.test(i)&&(c.toggle=!1),this.each(function(){const m=Ns.getOrCreateInstance(this,c);if(typeof i=="string"){if(typeof m[i]>"u")throw new TypeError(`No method named "${i}"`);m[i]()}})}}T.on(document,Om,yo,function(d){(d.target.tagName==="A"||d.delegateTarget&&d.delegateTarget.tagName==="A")&&d.preventDefault();for(const i of N.getMultipleElementsFromSelector(this))Ns.getOrCreateInstance(i,{toggle:!1}).toggle()}),R(Ns);var _t="top",Nt="bottom",xt="right",vt="left",Zr="auto",xs=[_t,Nt,xt,vt],Yn="start",$s="end",Gl="clippingParents",Eo="viewport",Ps="popper",Jl="reference",wo=xs.reduce(function(d,i){return d.concat([i+"-"+Yn,i+"-"+$s])},[]),To=[].concat(xs,[Zr]).reduce(function(d,i){return d.concat([i,i+"-"+Yn,i+"-"+$s])},[]),Ql="beforeRead",Xl="read",Zl="afterRead",ec="beforeMain",tc="main",nc="afterMain",sc="beforeWrite",rc="write",ic="afterWrite",oc=[Ql,Xl,Zl,ec,tc,nc,sc,rc,ic];function Xt(d){return d?(d.nodeName||"").toLowerCase():null}function $t(d){if(d==null)return window;if(d.toString()!=="[object Window]"){var i=d.ownerDocument;return i&&i.defaultView||window}return d}function zn(d){var i=$t(d).Element;return d instanceof i||d instanceof Element}function kt(d){var i=$t(d).HTMLElement;return d instanceof i||d instanceof HTMLElement}function Ao(d){if(typeof ShadowRoot>"u")return!1;var i=$t(d).ShadowRoot;return d instanceof i||d instanceof ShadowRoot}function Mm(d){var i=d.state;Object.keys(i.elements).forEach(function(c){var m=i.styles[c]||{},y=i.attributes[c]||{},x=i.elements[c];!kt(x)||!Xt(x)||(Object.assign(x.style,m),Object.keys(y).forEach(function($){var W=y[$];W===!1?x.removeAttribute($):x.setAttribute($,W===!0?"":W)}))})}function km(d){var i=d.state,c={popper:{position:i.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(i.elements.popper.style,c.popper),i.styles=c,i.elements.arrow&&Object.assign(i.elements.arrow.style,c.arrow),function(){Object.keys(i.elements).forEach(function(m){var y=i.elements[m],x=i.attributes[m]||{},$=Object.keys(i.styles.hasOwnProperty(m)?i.styles[m]:c[m]),W=$.reduce(function(ee,le){return ee[le]="",ee},{});!kt(y)||!Xt(y)||(Object.assign(y.style,W),Object.keys(x).forEach(function(ee){y.removeAttribute(ee)}))})}}const So={name:"applyStyles",enabled:!0,phase:"write",fn:Mm,effect:km,requires:["computeStyles"]};function Zt(d){return d.split("-")[0]}var Gn=Math.max,ei=Math.min,Ds=Math.round;function Co(){var d=navigator.userAgentData;return d!=null&&d.brands&&Array.isArray(d.brands)?d.brands.map(function(i){return i.brand+"/"+i.version}).join(" "):navigator.userAgent}function ac(){return!/^((?!chrome|android).)*safari/i.test(Co())}function Ls(d,i,c){i===void 0&&(i=!1),c===void 0&&(c=!1);var m=d.getBoundingClientRect(),y=1,x=1;i&&kt(d)&&(y=d.offsetWidth>0&&Ds(m.width)/d.offsetWidth||1,x=d.offsetHeight>0&&Ds(m.height)/d.offsetHeight||1);var $=zn(d)?$t(d):window,W=$.visualViewport,ee=!ac()&&c,le=(m.left+(ee&&W?W.offsetLeft:0))/y,ne=(m.top+(ee&&W?W.offsetTop:0))/x,Te=m.width/y,Ae=m.height/x;return{width:Te,height:Ae,top:ne,right:le+Te,bottom:ne+Ae,left:le,x:le,y:ne}}function Oo(d){var i=Ls(d),c=d.offsetWidth,m=d.offsetHeight;return Math.abs(i.width-c)<=1&&(c=i.width),Math.abs(i.height-m)<=1&&(m=i.height),{x:d.offsetLeft,y:d.offsetTop,width:c,height:m}}function lc(d,i){var c=i.getRootNode&&i.getRootNode();if(d.contains(i))return!0;if(c&&Ao(c)){var m=i;do{if(m&&d.isSameNode(m))return!0;m=m.parentNode||m.host}while(m)}return!1}function dn(d){return $t(d).getComputedStyle(d)}function Bm(d){return["table","td","th"].indexOf(Xt(d))>=0}function Nn(d){return((zn(d)?d.ownerDocument:d.document)||window.document).documentElement}function ti(d){return Xt(d)==="html"?d:d.assignedSlot||d.parentNode||(Ao(d)?d.host:null)||Nn(d)}function cc(d){return!kt(d)||dn(d).position==="fixed"?null:d.offsetParent}function Fm(d){var i=/firefox/i.test(Co()),c=/Trident/i.test(Co());if(c&&kt(d)){var m=dn(d);if(m.position==="fixed")return null}var y=ti(d);for(Ao(y)&&(y=y.host);kt(y)&&["html","body"].indexOf(Xt(y))<0;){var x=dn(y);if(x.transform!=="none"||x.perspective!=="none"||x.contain==="paint"||["transform","perspective"].indexOf(x.willChange)!==-1||i&&x.willChange==="filter"||i&&x.filter&&x.filter!=="none")return y;y=y.parentNode}return null}function ar(d){for(var i=$t(d),c=cc(d);c&&Bm(c)&&dn(c).position==="static";)c=cc(c);return c&&(Xt(c)==="html"||Xt(c)==="body"&&dn(c).position==="static")?i:c||Fm(d)||i}function Ro(d){return["top","bottom"].indexOf(d)>=0?"x":"y"}function lr(d,i,c){return Gn(d,ei(i,c))}function Hm(d,i,c){var m=lr(d,i,c);return m>c?c:m}function uc(){return{top:0,right:0,bottom:0,left:0}}function fc(d){return Object.assign({},uc(),d)}function dc(d,i){return i.reduce(function(c,m){return c[m]=d,c},{})}var Vm=function(i,c){return i=typeof i=="function"?i(Object.assign({},c.rects,{placement:c.placement})):i,fc(typeof i!="number"?i:dc(i,xs))};function Um(d){var i,c=d.state,m=d.name,y=d.options,x=c.elements.arrow,$=c.modifiersData.popperOffsets,W=Zt(c.placement),ee=Ro(W),le=[vt,xt].indexOf(W)>=0,ne=le?"height":"width";if(!(!x||!$)){var Te=Vm(y.padding,c),Ae=Oo(x),_e=ee==="y"?_t:vt,Ve=ee==="y"?Nt:xt,Se=c.rects.reference[ne]+c.rects.reference[ee]-$[ee]-c.rects.popper[ne],xe=$[ee]-c.rects.reference[ee],Ke=ar(x),Qe=Ke?ee==="y"?Ke.clientHeight||0:Ke.clientWidth||0:0,Xe=Se/2-xe/2,Ce=Te[_e],ke=Qe-Ae[ne]-Te[Ve],Be=Qe/2-Ae[ne]/2+Xe,Ge=lr(Ce,Be,ke),ot=ee;c.modifiersData[m]=(i={},i[ot]=Ge,i.centerOffset=Ge-Be,i)}}function jm(d){var i=d.state,c=d.options,m=c.element,y=m===void 0?"[data-popper-arrow]":m;y!=null&&(typeof y=="string"&&(y=i.elements.popper.querySelector(y),!y)||lc(i.elements.popper,y)&&(i.elements.arrow=y))}const hc={name:"arrow",enabled:!0,phase:"main",fn:Um,effect:jm,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Is(d){return d.split("-")[1]}var qm={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Km(d,i){var c=d.x,m=d.y,y=i.devicePixelRatio||1;return{x:Ds(c*y)/y||0,y:Ds(m*y)/y||0}}function pc(d){var i,c=d.popper,m=d.popperRect,y=d.placement,x=d.variation,$=d.offsets,W=d.position,ee=d.gpuAcceleration,le=d.adaptive,ne=d.roundOffsets,Te=d.isFixed,Ae=$.x,_e=Ae===void 0?0:Ae,Ve=$.y,Se=Ve===void 0?0:Ve,xe=typeof ne=="function"?ne({x:_e,y:Se}):{x:_e,y:Se};_e=xe.x,Se=xe.y;var Ke=$.hasOwnProperty("x"),Qe=$.hasOwnProperty("y"),Xe=vt,Ce=_t,ke=window;if(le){var Be=ar(c),Ge="clientHeight",ot="clientWidth";if(Be===$t(c)&&(Be=Nn(c),dn(Be).position!=="static"&&W==="absolute"&&(Ge="scrollHeight",ot="scrollWidth")),Be=Be,y===_t||(y===vt||y===xt)&&x===$s){Ce=Nt;var st=Te&&Be===ke&&ke.visualViewport?ke.visualViewport.height:Be[Ge];Se-=st-m.height,Se*=ee?1:-1}if(y===vt||(y===_t||y===Nt)&&x===$s){Xe=xt;var tt=Te&&Be===ke&&ke.visualViewport?ke.visualViewport.width:Be[ot];_e-=tt-m.width,_e*=ee?1:-1}}var ft=Object.assign({position:W},le&&qm),qt=ne===!0?Km({x:_e,y:Se},$t(c)):{x:_e,y:Se};if(_e=qt.x,Se=qt.y,ee){var bt;return Object.assign({},ft,(bt={},bt[Ce]=Qe?"0":"",bt[Xe]=Ke?"0":"",bt.transform=(ke.devicePixelRatio||1)<=1?"translate("+_e+"px, "+Se+"px)":"translate3d("+_e+"px, "+Se+"px, 0)",bt))}return Object.assign({},ft,(i={},i[Ce]=Qe?Se+"px":"",i[Xe]=Ke?_e+"px":"",i.transform="",i))}function Wm(d){var i=d.state,c=d.options,m=c.gpuAcceleration,y=m===void 0?!0:m,x=c.adaptive,$=x===void 0?!0:x,W=c.roundOffsets,ee=W===void 0?!0:W,le={placement:Zt(i.placement),variation:Is(i.placement),popper:i.elements.popper,popperRect:i.rects.popper,gpuAcceleration:y,isFixed:i.options.strategy==="fixed"};i.modifiersData.popperOffsets!=null&&(i.styles.popper=Object.assign({},i.styles.popper,pc(Object.assign({},le,{offsets:i.modifiersData.popperOffsets,position:i.options.strategy,adaptive:$,roundOffsets:ee})))),i.modifiersData.arrow!=null&&(i.styles.arrow=Object.assign({},i.styles.arrow,pc(Object.assign({},le,{offsets:i.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:ee})))),i.attributes.popper=Object.assign({},i.attributes.popper,{"data-popper-placement":i.placement})}const No={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Wm,data:{}};var ni={passive:!0};function Ym(d){var i=d.state,c=d.instance,m=d.options,y=m.scroll,x=y===void 0?!0:y,$=m.resize,W=$===void 0?!0:$,ee=$t(i.elements.popper),le=[].concat(i.scrollParents.reference,i.scrollParents.popper);return x&&le.forEach(function(ne){ne.addEventListener("scroll",c.update,ni)}),W&&ee.addEventListener("resize",c.update,ni),function(){x&&le.forEach(function(ne){ne.removeEventListener("scroll",c.update,ni)}),W&&ee.removeEventListener("resize",c.update,ni)}}const xo={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Ym,data:{}};var zm={left:"right",right:"left",bottom:"top",top:"bottom"};function si(d){return d.replace(/left|right|bottom|top/g,function(i){return zm[i]})}var Gm={start:"end",end:"start"};function mc(d){return d.replace(/start|end/g,function(i){return Gm[i]})}function $o(d){var i=$t(d),c=i.pageXOffset,m=i.pageYOffset;return{scrollLeft:c,scrollTop:m}}function Po(d){return Ls(Nn(d)).left+$o(d).scrollLeft}function Jm(d,i){var c=$t(d),m=Nn(d),y=c.visualViewport,x=m.clientWidth,$=m.clientHeight,W=0,ee=0;if(y){x=y.width,$=y.height;var le=ac();(le||!le&&i==="fixed")&&(W=y.offsetLeft,ee=y.offsetTop)}return{width:x,height:$,x:W+Po(d),y:ee}}function Qm(d){var i,c=Nn(d),m=$o(d),y=(i=d.ownerDocument)==null?void 0:i.body,x=Gn(c.scrollWidth,c.clientWidth,y?y.scrollWidth:0,y?y.clientWidth:0),$=Gn(c.scrollHeight,c.clientHeight,y?y.scrollHeight:0,y?y.clientHeight:0),W=-m.scrollLeft+Po(d),ee=-m.scrollTop;return dn(y||c).direction==="rtl"&&(W+=Gn(c.clientWidth,y?y.clientWidth:0)-x),{width:x,height:$,x:W,y:ee}}function Do(d){var i=dn(d),c=i.overflow,m=i.overflowX,y=i.overflowY;return/auto|scroll|overlay|hidden/.test(c+y+m)}function gc(d){return["html","body","#document"].indexOf(Xt(d))>=0?d.ownerDocument.body:kt(d)&&Do(d)?d:gc(ti(d))}function cr(d,i){var c;i===void 0&&(i=[]);var m=gc(d),y=m===((c=d.ownerDocument)==null?void 0:c.body),x=$t(m),$=y?[x].concat(x.visualViewport||[],Do(m)?m:[]):m,W=i.concat($);return y?W:W.concat(cr(ti($)))}function Lo(d){return Object.assign({},d,{left:d.x,top:d.y,right:d.x+d.width,bottom:d.y+d.height})}function Xm(d,i){var c=Ls(d,!1,i==="fixed");return c.top=c.top+d.clientTop,c.left=c.left+d.clientLeft,c.bottom=c.top+d.clientHeight,c.right=c.left+d.clientWidth,c.width=d.clientWidth,c.height=d.clientHeight,c.x=c.left,c.y=c.top,c}function _c(d,i,c){return i===Eo?Lo(Jm(d,c)):zn(i)?Xm(i,c):Lo(Qm(Nn(d)))}function Zm(d){var i=cr(ti(d)),c=["absolute","fixed"].indexOf(dn(d).position)>=0,m=c&&kt(d)?ar(d):d;return zn(m)?i.filter(function(y){return zn(y)&&lc(y,m)&&Xt(y)!=="body"}):[]}function eg(d,i,c,m){var y=i==="clippingParents"?Zm(d):[].concat(i),x=[].concat(y,[c]),$=x[0],W=x.reduce(function(ee,le){var ne=_c(d,le,m);return ee.top=Gn(ne.top,ee.top),ee.right=ei(ne.right,ee.right),ee.bottom=ei(ne.bottom,ee.bottom),ee.left=Gn(ne.left,ee.left),ee},_c(d,$,m));return W.width=W.right-W.left,W.height=W.bottom-W.top,W.x=W.left,W.y=W.top,W}function vc(d){var i=d.reference,c=d.element,m=d.placement,y=m?Zt(m):null,x=m?Is(m):null,$=i.x+i.width/2-c.width/2,W=i.y+i.height/2-c.height/2,ee;switch(y){case _t:ee={x:$,y:i.y-c.height};break;case Nt:ee={x:$,y:i.y+i.height};break;case xt:ee={x:i.x+i.width,y:W};break;case vt:ee={x:i.x-c.width,y:W};break;default:ee={x:i.x,y:i.y}}var le=y?Ro(y):null;if(le!=null){var ne=le==="y"?"height":"width";switch(x){case Yn:ee[le]=ee[le]-(i[ne]/2-c[ne]/2);break;case $s:ee[le]=ee[le]+(i[ne]/2-c[ne]/2);break}}return ee}function Ms(d,i){i===void 0&&(i={});var c=i,m=c.placement,y=m===void 0?d.placement:m,x=c.strategy,$=x===void 0?d.strategy:x,W=c.boundary,ee=W===void 0?Gl:W,le=c.rootBoundary,ne=le===void 0?Eo:le,Te=c.elementContext,Ae=Te===void 0?Ps:Te,_e=c.altBoundary,Ve=_e===void 0?!1:_e,Se=c.padding,xe=Se===void 0?0:Se,Ke=fc(typeof xe!="number"?xe:dc(xe,xs)),Qe=Ae===Ps?Jl:Ps,Xe=d.rects.popper,Ce=d.elements[Ve?Qe:Ae],ke=eg(zn(Ce)?Ce:Ce.contextElement||Nn(d.elements.popper),ee,ne,$),Be=Ls(d.elements.reference),Ge=vc({reference:Be,element:Xe,placement:y}),ot=Lo(Object.assign({},Xe,Ge)),st=Ae===Ps?ot:Be,tt={top:ke.top-st.top+Ke.top,bottom:st.bottom-ke.bottom+Ke.bottom,left:ke.left-st.left+Ke.left,right:st.right-ke.right+Ke.right},ft=d.modifiersData.offset;if(Ae===Ps&&ft){var qt=ft[y];Object.keys(tt).forEach(function(bt){var ss=[xt,Nt].indexOf(bt)>=0?1:-1,rs=[_t,Nt].indexOf(bt)>=0?"y":"x";tt[bt]+=qt[rs]*ss})}return tt}function tg(d,i){i===void 0&&(i={});var c=i,m=c.placement,y=c.boundary,x=c.rootBoundary,$=c.padding,W=c.flipVariations,ee=c.allowedAutoPlacements,le=ee===void 0?To:ee,ne=Is(m),Te=ne?W?wo:wo.filter(function(Ve){return Is(Ve)===ne}):xs,Ae=Te.filter(function(Ve){return le.indexOf(Ve)>=0});Ae.length===0&&(Ae=Te);var _e=Ae.reduce(function(Ve,Se){return Ve[Se]=Ms(d,{placement:Se,boundary:y,rootBoundary:x,padding:$})[Zt(Se)],Ve},{});return Object.keys(_e).sort(function(Ve,Se){return _e[Ve]-_e[Se]})}function ng(d){if(Zt(d)===Zr)return[];var i=si(d);return[mc(d),i,mc(i)]}function sg(d){var i=d.state,c=d.options,m=d.name;if(!i.modifiersData[m]._skip){for(var y=c.mainAxis,x=y===void 0?!0:y,$=c.altAxis,W=$===void 0?!0:$,ee=c.fallbackPlacements,le=c.padding,ne=c.boundary,Te=c.rootBoundary,Ae=c.altBoundary,_e=c.flipVariations,Ve=_e===void 0?!0:_e,Se=c.allowedAutoPlacements,xe=i.options.placement,Ke=Zt(xe),Qe=Ke===xe,Xe=ee||(Qe||!Ve?[si(xe)]:ng(xe)),Ce=[xe].concat(Xe).reduce(function(Fs,$n){return Fs.concat(Zt($n)===Zr?tg(i,{placement:$n,boundary:ne,rootBoundary:Te,padding:le,flipVariations:Ve,allowedAutoPlacements:Se}):$n)},[]),ke=i.rects.reference,Be=i.rects.popper,Ge=new Map,ot=!0,st=Ce[0],tt=0;tt=0,rs=ss?"width":"height",Pt=Ms(i,{placement:ft,boundary:ne,rootBoundary:Te,altBoundary:Ae,padding:le}),Kt=ss?bt?xt:vt:bt?Nt:_t;ke[rs]>Be[rs]&&(Kt=si(Kt));var di=si(Kt),is=[];if(x&&is.push(Pt[qt]<=0),W&&is.push(Pt[Kt]<=0,Pt[di]<=0),is.every(function(Fs){return Fs})){st=ft,ot=!1;break}Ge.set(ft,is)}if(ot)for(var hi=Ve?3:1,zo=function($n){var pr=Ce.find(function(mi){var os=Ge.get(mi);if(os)return os.slice(0,$n).every(function(Go){return Go})});if(pr)return st=pr,"break"},hr=hi;hr>0;hr--){var pi=zo(hr);if(pi==="break")break}i.placement!==st&&(i.modifiersData[m]._skip=!0,i.placement=st,i.reset=!0)}}const bc={name:"flip",enabled:!0,phase:"main",fn:sg,requiresIfExists:["offset"],data:{_skip:!1}};function yc(d,i,c){return c===void 0&&(c={x:0,y:0}),{top:d.top-i.height-c.y,right:d.right-i.width+c.x,bottom:d.bottom-i.height+c.y,left:d.left-i.width-c.x}}function Ec(d){return[_t,xt,Nt,vt].some(function(i){return d[i]>=0})}function rg(d){var i=d.state,c=d.name,m=i.rects.reference,y=i.rects.popper,x=i.modifiersData.preventOverflow,$=Ms(i,{elementContext:"reference"}),W=Ms(i,{altBoundary:!0}),ee=yc($,m),le=yc(W,y,x),ne=Ec(ee),Te=Ec(le);i.modifiersData[c]={referenceClippingOffsets:ee,popperEscapeOffsets:le,isReferenceHidden:ne,hasPopperEscaped:Te},i.attributes.popper=Object.assign({},i.attributes.popper,{"data-popper-reference-hidden":ne,"data-popper-escaped":Te})}const wc={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:rg};function ig(d,i,c){var m=Zt(d),y=[vt,_t].indexOf(m)>=0?-1:1,x=typeof c=="function"?c(Object.assign({},i,{placement:d})):c,$=x[0],W=x[1];return $=$||0,W=(W||0)*y,[vt,xt].indexOf(m)>=0?{x:W,y:$}:{x:$,y:W}}function og(d){var i=d.state,c=d.options,m=d.name,y=c.offset,x=y===void 0?[0,0]:y,$=To.reduce(function(ne,Te){return ne[Te]=ig(Te,i.rects,x),ne},{}),W=$[i.placement],ee=W.x,le=W.y;i.modifiersData.popperOffsets!=null&&(i.modifiersData.popperOffsets.x+=ee,i.modifiersData.popperOffsets.y+=le),i.modifiersData[m]=$}const Tc={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:og};function ag(d){var i=d.state,c=d.name;i.modifiersData[c]=vc({reference:i.rects.reference,element:i.rects.popper,placement:i.placement})}const Io={name:"popperOffsets",enabled:!0,phase:"read",fn:ag,data:{}};function lg(d){return d==="x"?"y":"x"}function cg(d){var i=d.state,c=d.options,m=d.name,y=c.mainAxis,x=y===void 0?!0:y,$=c.altAxis,W=$===void 0?!1:$,ee=c.boundary,le=c.rootBoundary,ne=c.altBoundary,Te=c.padding,Ae=c.tether,_e=Ae===void 0?!0:Ae,Ve=c.tetherOffset,Se=Ve===void 0?0:Ve,xe=Ms(i,{boundary:ee,rootBoundary:le,padding:Te,altBoundary:ne}),Ke=Zt(i.placement),Qe=Is(i.placement),Xe=!Qe,Ce=Ro(Ke),ke=lg(Ce),Be=i.modifiersData.popperOffsets,Ge=i.rects.reference,ot=i.rects.popper,st=typeof Se=="function"?Se(Object.assign({},i.rects,{placement:i.placement})):Se,tt=typeof st=="number"?{mainAxis:st,altAxis:st}:Object.assign({mainAxis:0,altAxis:0},st),ft=i.modifiersData.offset?i.modifiersData.offset[i.placement]:null,qt={x:0,y:0};if(Be){if(x){var bt,ss=Ce==="y"?_t:vt,rs=Ce==="y"?Nt:xt,Pt=Ce==="y"?"height":"width",Kt=Be[Ce],di=Kt+xe[ss],is=Kt-xe[rs],hi=_e?-ot[Pt]/2:0,zo=Qe===Yn?Ge[Pt]:ot[Pt],hr=Qe===Yn?-ot[Pt]:-Ge[Pt],pi=i.elements.arrow,Fs=_e&&pi?Oo(pi):{width:0,height:0},$n=i.modifiersData["arrow#persistent"]?i.modifiersData["arrow#persistent"].padding:uc(),pr=$n[ss],mi=$n[rs],os=lr(0,Ge[Pt],Fs[Pt]),Go=Xe?Ge[Pt]/2-hi-os-pr-tt.mainAxis:zo-os-pr-tt.mainAxis,tb=Xe?-Ge[Pt]/2+hi+os+mi+tt.mainAxis:hr+os+mi+tt.mainAxis,Jo=i.elements.arrow&&ar(i.elements.arrow),nb=Jo?Ce==="y"?Jo.clientTop||0:Jo.clientLeft||0:0,fu=(bt=ft==null?void 0:ft[Ce])!=null?bt:0,sb=Kt+Go-fu-nb,rb=Kt+tb-fu,du=lr(_e?ei(di,sb):di,Kt,_e?Gn(is,rb):is);Be[Ce]=du,qt[Ce]=du-Kt}if(W){var hu,ib=Ce==="x"?_t:vt,ob=Ce==="x"?Nt:xt,as=Be[ke],gi=ke==="y"?"height":"width",pu=as+xe[ib],mu=as-xe[ob],Qo=[_t,vt].indexOf(Ke)!==-1,gu=(hu=ft==null?void 0:ft[ke])!=null?hu:0,_u=Qo?pu:as-Ge[gi]-ot[gi]-gu+tt.altAxis,vu=Qo?as+Ge[gi]+ot[gi]-gu-tt.altAxis:mu,bu=_e&&Qo?Hm(_u,as,vu):lr(_e?_u:pu,as,_e?vu:mu);Be[ke]=bu,qt[ke]=bu-as}i.modifiersData[m]=qt}}const Ac={name:"preventOverflow",enabled:!0,phase:"main",fn:cg,requiresIfExists:["offset"]};function ug(d){return{scrollLeft:d.scrollLeft,scrollTop:d.scrollTop}}function fg(d){return d===$t(d)||!kt(d)?$o(d):ug(d)}function dg(d){var i=d.getBoundingClientRect(),c=Ds(i.width)/d.offsetWidth||1,m=Ds(i.height)/d.offsetHeight||1;return c!==1||m!==1}function hg(d,i,c){c===void 0&&(c=!1);var m=kt(i),y=kt(i)&&dg(i),x=Nn(i),$=Ls(d,y,c),W={scrollLeft:0,scrollTop:0},ee={x:0,y:0};return(m||!m&&!c)&&((Xt(i)!=="body"||Do(x))&&(W=fg(i)),kt(i)?(ee=Ls(i,!0),ee.x+=i.clientLeft,ee.y+=i.clientTop):x&&(ee.x=Po(x))),{x:$.left+W.scrollLeft-ee.x,y:$.top+W.scrollTop-ee.y,width:$.width,height:$.height}}function pg(d){var i=new Map,c=new Set,m=[];d.forEach(function(x){i.set(x.name,x)});function y(x){c.add(x.name);var $=[].concat(x.requires||[],x.requiresIfExists||[]);$.forEach(function(W){if(!c.has(W)){var ee=i.get(W);ee&&y(ee)}}),m.push(x)}return d.forEach(function(x){c.has(x.name)||y(x)}),m}function mg(d){var i=pg(d);return oc.reduce(function(c,m){return c.concat(i.filter(function(y){return y.phase===m}))},[])}function gg(d){var i;return function(){return i||(i=new Promise(function(c){Promise.resolve().then(function(){i=void 0,c(d())})})),i}}function _g(d){var i=d.reduce(function(c,m){var y=c[m.name];return c[m.name]=y?Object.assign({},y,m,{options:Object.assign({},y.options,m.options),data:Object.assign({},y.data,m.data)}):m,c},{});return Object.keys(i).map(function(c){return i[c]})}var Sc={placement:"bottom",modifiers:[],strategy:"absolute"};function Cc(){for(var d=arguments.length,i=new Array(d),c=0;c"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org/docs/v2/)");let i=this._element;this._config.reference==="parent"?i=this._parent:g(this._config.reference)?i=_(this._config.reference):typeof this._config.reference=="object"&&(i=this._config.reference);const c=this._getPopperConfig();this._popper=Mo(i,this._menu,c)}_isShown(){return this._menu.classList.contains(ks)}_getPlacement(){const i=this._parent;if(i.classList.contains($g))return jg;if(i.classList.contains(Pg))return qg;if(i.classList.contains(Dg))return Kg;if(i.classList.contains(Lg))return Wg;const c=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return i.classList.contains(xg)?c?Hg:Fg:c?Ug:Vg}_detectNavbar(){return this._element.closest(Mg)!==null}_getOffset(){const{offset:i}=this._config;return typeof i=="string"?i.split(",").map(c=>Number.parseInt(c,10)):typeof i=="function"?c=>i(c,this._element):i}_getPopperConfig(){const i={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return(this._inNavbar||this._config.display==="static")&&(v.setDataAttribute(this._menu,"popper","static"),i.modifiers=[{name:"applyStyles",enabled:!1}]),{...i,...w(this._config.popperConfig,[void 0,i])}}_selectMenuItem({key:i,target:c}){const m=N.find(Bg,this._menu).filter(y=>E(y));m.length&&D(m,c,i===xc,!m.includes(c)).focus()}static jQueryInterface(i){return this.each(function(){const c=jt.getOrCreateInstance(this,i);if(typeof i=="string"){if(typeof c[i]>"u")throw new TypeError(`No method named "${i}"`);c[i]()}})}static clearMenus(i){if(i.button===Ag||i.type==="keyup"&&i.key!==Nc)return;const c=N.find(Ig);for(const m of c){const y=jt.getInstance(m);if(!y||y._config.autoClose===!1)continue;const x=i.composedPath(),$=x.includes(y._menu);if(x.includes(y._element)||y._config.autoClose==="inside"&&!$||y._config.autoClose==="outside"&&$||y._menu.contains(i.target)&&(i.type==="keyup"&&i.key===Nc||/input|select|option|textarea|form/i.test(i.target.tagName)))continue;const W={relatedTarget:y._element};i.type==="click"&&(W.clickEvent=i),y._completeHide(W)}}static dataApiKeydownHandler(i){const c=/input|textarea/i.test(i.target.tagName),m=i.key===wg,y=[Tg,xc].includes(i.key);if(!y&&!m||c&&!m)return;i.preventDefault();const x=this.matches(Qn)?this:N.prev(this,Qn)[0]||N.next(this,Qn)[0]||N.findOne(Qn,i.delegateTarget.parentNode),$=jt.getOrCreateInstance(x);if(y){i.stopPropagation(),$.show(),$._selectMenuItem(i);return}$._isShown()&&(i.stopPropagation(),$.hide(),x.focus())}}T.on(document,Pc,Qn,jt.dataApiKeydownHandler),T.on(document,Pc,ii,jt.dataApiKeydownHandler),T.on(document,$c,jt.clearMenus),T.on(document,Ng,jt.clearMenus),T.on(document,$c,Qn,function(d){d.preventDefault(),jt.getOrCreateInstance(this).toggle()}),R(jt);const Dc="backdrop",Gg="fade",Lc="show",Ic=`mousedown.bs.${Dc}`,Jg={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},Qg={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class Mc extends b{constructor(i){super(),this._config=this._getConfig(i),this._isAppended=!1,this._element=null}static get Default(){return Jg}static get DefaultType(){return Qg}static get NAME(){return Dc}show(i){if(!this._config.isVisible){w(i);return}this._append();const c=this._getElement();this._config.isAnimated&&F(c),c.classList.add(Lc),this._emulateAnimation(()=>{w(i)})}hide(i){if(!this._config.isVisible){w(i);return}this._getElement().classList.remove(Lc),this._emulateAnimation(()=>{this.dispose(),w(i)})}dispose(){this._isAppended&&(T.off(this._element,Ic),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const i=document.createElement("div");i.className=this._config.className,this._config.isAnimated&&i.classList.add(Gg),this._element=i}return this._element}_configAfterMerge(i){return i.rootElement=_(i.rootElement),i}_append(){if(this._isAppended)return;const i=this._getElement();this._config.rootElement.append(i),T.on(i,Ic,()=>{w(this._config.clickCallback)}),this._isAppended=!0}_emulateAnimation(i){S(i,this._getElement(),this._config.isAnimated)}}const Xg="focustrap",oi=".bs.focustrap",Zg=`focusin${oi}`,e_=`keydown.tab${oi}`,t_="Tab",n_="forward",kc="backward",s_={autofocus:!0,trapElement:null},r_={autofocus:"boolean",trapElement:"element"};class Bc extends b{constructor(i){super(),this._config=this._getConfig(i),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return s_}static get DefaultType(){return r_}static get NAME(){return Xg}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),T.off(document,oi),T.on(document,Zg,i=>this._handleFocusin(i)),T.on(document,e_,i=>this._handleKeydown(i)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,T.off(document,oi))}_handleFocusin(i){const{trapElement:c}=this._config;if(i.target===document||i.target===c||c.contains(i.target))return;const m=N.focusableChildren(c);m.length===0?c.focus():this._lastTabNavDirection===kc?m[m.length-1].focus():m[0].focus()}_handleKeydown(i){i.key===t_&&(this._lastTabNavDirection=i.shiftKey?kc:n_)}}const Fc=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",Hc=".sticky-top",ai="padding-right",Vc="margin-right";class Bo{constructor(){this._element=document.body}getWidth(){const i=document.documentElement.clientWidth;return Math.abs(window.innerWidth-i)}hide(){const i=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,ai,c=>c+i),this._setElementAttributes(Fc,ai,c=>c+i),this._setElementAttributes(Hc,Vc,c=>c-i)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,ai),this._resetElementAttributes(Fc,ai),this._resetElementAttributes(Hc,Vc)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(i,c,m){const y=this.getWidth(),x=$=>{if($!==this._element&&window.innerWidth>$.clientWidth+y)return;this._saveInitialAttribute($,c);const W=window.getComputedStyle($).getPropertyValue(c);$.style.setProperty(c,`${m(Number.parseFloat(W))}px`)};this._applyManipulationCallback(i,x)}_saveInitialAttribute(i,c){const m=i.style.getPropertyValue(c);m&&v.setDataAttribute(i,c,m)}_resetElementAttributes(i,c){const m=y=>{const x=v.getDataAttribute(y,c);if(x===null){y.style.removeProperty(c);return}v.removeDataAttribute(y,c),y.style.setProperty(c,x)};this._applyManipulationCallback(i,m)}_applyManipulationCallback(i,c){if(g(i)){c(i);return}for(const m of N.find(i,this._element))c(m)}}const i_="modal",Bt=".bs.modal",o_=".data-api",a_="Escape",l_=`hide${Bt}`,c_=`hidePrevented${Bt}`,Uc=`hidden${Bt}`,jc=`show${Bt}`,u_=`shown${Bt}`,f_=`resize${Bt}`,d_=`click.dismiss${Bt}`,h_=`mousedown.dismiss${Bt}`,p_=`keydown.dismiss${Bt}`,m_=`click${Bt}${o_}`,qc="modal-open",g_="fade",Kc="show",Fo="modal-static",__=".modal.show",v_=".modal-dialog",b_=".modal-body",y_='[data-bs-toggle="modal"]',E_={backdrop:!0,focus:!0,keyboard:!0},w_={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class Xn extends K{constructor(i,c){super(i,c),this._dialog=N.findOne(v_,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new Bo,this._addEventListeners()}static get Default(){return E_}static get DefaultType(){return w_}static get NAME(){return i_}toggle(i){return this._isShown?this.hide():this.show(i)}show(i){this._isShown||this._isTransitioning||T.trigger(this._element,jc,{relatedTarget:i}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(qc),this._adjustDialog(),this._backdrop.show(()=>this._showElement(i)))}hide(){!this._isShown||this._isTransitioning||T.trigger(this._element,l_).defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(Kc),this._queueCallback(()=>this._hideModal(),this._element,this._isAnimated()))}dispose(){T.off(window,Bt),T.off(this._dialog,Bt),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new Mc({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Bc({trapElement:this._element})}_showElement(i){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const c=N.findOne(b_,this._dialog);c&&(c.scrollTop=0),F(this._element),this._element.classList.add(Kc);const m=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,T.trigger(this._element,u_,{relatedTarget:i})};this._queueCallback(m,this._dialog,this._isAnimated())}_addEventListeners(){T.on(this._element,p_,i=>{if(i.key===a_){if(this._config.keyboard){this.hide();return}this._triggerBackdropTransition()}}),T.on(window,f_,()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()}),T.on(this._element,h_,i=>{T.one(this._element,d_,c=>{if(!(this._element!==i.target||this._element!==c.target)){if(this._config.backdrop==="static"){this._triggerBackdropTransition();return}this._config.backdrop&&this.hide()}})})}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide(()=>{document.body.classList.remove(qc),this._resetAdjustments(),this._scrollBar.reset(),T.trigger(this._element,Uc)})}_isAnimated(){return this._element.classList.contains(g_)}_triggerBackdropTransition(){if(T.trigger(this._element,c_).defaultPrevented)return;const c=this._element.scrollHeight>document.documentElement.clientHeight,m=this._element.style.overflowY;m==="hidden"||this._element.classList.contains(Fo)||(c||(this._element.style.overflowY="hidden"),this._element.classList.add(Fo),this._queueCallback(()=>{this._element.classList.remove(Fo),this._queueCallback(()=>{this._element.style.overflowY=m},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){const i=this._element.scrollHeight>document.documentElement.clientHeight,c=this._scrollBar.getWidth(),m=c>0;if(m&&!i){const y=O()?"paddingLeft":"paddingRight";this._element.style[y]=`${c}px`}if(!m&&i){const y=O()?"paddingRight":"paddingLeft";this._element.style[y]=`${c}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(i,c){return this.each(function(){const m=Xn.getOrCreateInstance(this,i);if(typeof i=="string"){if(typeof m[i]>"u")throw new TypeError(`No method named "${i}"`);m[i](c)}})}}T.on(document,m_,y_,function(d){const i=N.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&d.preventDefault(),T.one(i,jc,y=>{y.defaultPrevented||T.one(i,Uc,()=>{E(this)&&this.focus()})});const c=N.findOne(__);c&&Xn.getInstance(c).hide(),Xn.getOrCreateInstance(i).toggle(this)}),oe(Xn),R(Xn);const T_="offcanvas",hn=".bs.offcanvas",Wc=".data-api",A_=`load${hn}${Wc}`,S_="Escape",Yc="show",zc="showing",Gc="hiding",C_="offcanvas-backdrop",Jc=".offcanvas.show",O_=`show${hn}`,R_=`shown${hn}`,N_=`hide${hn}`,Qc=`hidePrevented${hn}`,Xc=`hidden${hn}`,x_=`resize${hn}`,$_=`click${hn}${Wc}`,P_=`keydown.dismiss${hn}`,D_='[data-bs-toggle="offcanvas"]',L_={backdrop:!0,keyboard:!0,scroll:!1},I_={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class pn extends K{constructor(i,c){super(i,c),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return L_}static get DefaultType(){return I_}static get NAME(){return T_}toggle(i){return this._isShown?this.hide():this.show(i)}show(i){if(this._isShown||T.trigger(this._element,O_,{relatedTarget:i}).defaultPrevented)return;this._isShown=!0,this._backdrop.show(),this._config.scroll||new Bo().hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(zc);const m=()=>{(!this._config.scroll||this._config.backdrop)&&this._focustrap.activate(),this._element.classList.add(Yc),this._element.classList.remove(zc),T.trigger(this._element,R_,{relatedTarget:i})};this._queueCallback(m,this._element,!0)}hide(){if(!this._isShown||T.trigger(this._element,N_).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add(Gc),this._backdrop.hide();const c=()=>{this._element.classList.remove(Yc,Gc),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||new Bo().reset(),T.trigger(this._element,Xc)};this._queueCallback(c,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const i=()=>{if(this._config.backdrop==="static"){T.trigger(this._element,Qc);return}this.hide()},c=!!this._config.backdrop;return new Mc({className:C_,isVisible:c,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:c?i:null})}_initializeFocusTrap(){return new Bc({trapElement:this._element})}_addEventListeners(){T.on(this._element,P_,i=>{if(i.key===S_){if(this._config.keyboard){this.hide();return}T.trigger(this._element,Qc)}})}static jQueryInterface(i){return this.each(function(){const c=pn.getOrCreateInstance(this,i);if(typeof i=="string"){if(c[i]===void 0||i.startsWith("_")||i==="constructor")throw new TypeError(`No method named "${i}"`);c[i](this)}})}}T.on(document,$_,D_,function(d){const i=N.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&d.preventDefault(),A(this))return;T.one(i,Xc,()=>{E(this)&&this.focus()});const c=N.findOne(Jc);c&&c!==i&&pn.getInstance(c).hide(),pn.getOrCreateInstance(i).toggle(this)}),T.on(window,A_,()=>{for(const d of N.find(Jc))pn.getOrCreateInstance(d).show()}),T.on(window,x_,()=>{for(const d of N.find("[aria-modal][class*=show][class*=offcanvas-]"))getComputedStyle(d).position!=="fixed"&&pn.getOrCreateInstance(d).hide()}),oe(pn),R(pn);const Zc={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],dd:[],div:[],dl:[],dt:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},M_=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),k_=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,B_=(d,i)=>{const c=d.nodeName.toLowerCase();return i.includes(c)?M_.has(c)?!!k_.test(d.nodeValue):!0:i.filter(m=>m instanceof RegExp).some(m=>m.test(c))};function F_(d,i,c){if(!d.length)return d;if(c&&typeof c=="function")return c(d);const y=new window.DOMParser().parseFromString(d,"text/html"),x=[].concat(...y.body.querySelectorAll("*"));for(const $ of x){const W=$.nodeName.toLowerCase();if(!Object.keys(i).includes(W)){$.remove();continue}const ee=[].concat(...$.attributes),le=[].concat(i["*"]||[],i[W]||[]);for(const ne of ee)B_(ne,le)||$.removeAttribute(ne.nodeName)}return y.body.innerHTML}const H_="TemplateFactory",V_={allowList:Zc,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"
"},U_={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},j_={entry:"(string|element|function|null)",selector:"(string|element)"};class q_ extends b{constructor(i){super(),this._config=this._getConfig(i)}static get Default(){return V_}static get DefaultType(){return U_}static get NAME(){return H_}getContent(){return Object.values(this._config.content).map(i=>this._resolvePossibleFunction(i)).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(i){return this._checkContent(i),this._config.content={...this._config.content,...i},this}toHtml(){const i=document.createElement("div");i.innerHTML=this._maybeSanitize(this._config.template);for(const[y,x]of Object.entries(this._config.content))this._setContent(i,x,y);const c=i.children[0],m=this._resolvePossibleFunction(this._config.extraClass);return m&&c.classList.add(...m.split(" ")),c}_typeCheckConfig(i){super._typeCheckConfig(i),this._checkContent(i.content)}_checkContent(i){for(const[c,m]of Object.entries(i))super._typeCheckConfig({selector:c,entry:m},j_)}_setContent(i,c,m){const y=N.findOne(m,i);if(y){if(c=this._resolvePossibleFunction(c),!c){y.remove();return}if(g(c)){this._putElementInTemplate(_(c),y);return}if(this._config.html){y.innerHTML=this._maybeSanitize(c);return}y.textContent=c}}_maybeSanitize(i){return this._config.sanitize?F_(i,this._config.allowList,this._config.sanitizeFn):i}_resolvePossibleFunction(i){return w(i,[void 0,this])}_putElementInTemplate(i,c){if(this._config.html){c.innerHTML="",c.append(i);return}c.textContent=i.textContent}}const K_="tooltip",W_=new Set(["sanitize","allowList","sanitizeFn"]),Ho="fade",Y_="modal",li="show",z_=".tooltip-inner",eu=`.${Y_}`,tu="hide.bs.modal",ur="hover",Vo="focus",G_="click",J_="manual",Q_="hide",X_="hidden",Z_="show",ev="shown",tv="inserted",nv="click",sv="focusin",rv="focusout",iv="mouseenter",ov="mouseleave",av={AUTO:"auto",TOP:"top",RIGHT:O()?"left":"right",BOTTOM:"bottom",LEFT:O()?"right":"left"},lv={allowList:Zc,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'',title:"",trigger:"hover focus"},cv={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class Zn extends K{constructor(i,c){if(typeof Oc>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org/docs/v2/)");super(i,c),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return lv}static get DefaultType(){return cv}static get NAME(){return K_}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){if(this._isEnabled){if(this._isShown()){this._leave();return}this._enter()}}dispose(){clearTimeout(this._timeout),T.off(this._element.closest(eu),tu,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!(this._isWithContent()&&this._isEnabled))return;const i=T.trigger(this._element,this.constructor.eventName(Z_)),m=(H(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(i.defaultPrevented||!m)return;this._disposePopper();const y=this._getTipElement();this._element.setAttribute("aria-describedby",y.getAttribute("id"));const{container:x}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(x.append(y),T.trigger(this._element,this.constructor.eventName(tv))),this._popper=this._createPopper(y),y.classList.add(li),"ontouchstart"in document.documentElement)for(const W of[].concat(...document.body.children))T.on(W,"mouseover",I);const $=()=>{T.trigger(this._element,this.constructor.eventName(ev)),this._isHovered===!1&&this._leave(),this._isHovered=!1};this._queueCallback($,this.tip,this._isAnimated())}hide(){if(!this._isShown()||T.trigger(this._element,this.constructor.eventName(Q_)).defaultPrevented)return;if(this._getTipElement().classList.remove(li),"ontouchstart"in document.documentElement)for(const y of[].concat(...document.body.children))T.off(y,"mouseover",I);this._activeTrigger[G_]=!1,this._activeTrigger[Vo]=!1,this._activeTrigger[ur]=!1,this._isHovered=null;const m=()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),T.trigger(this._element,this.constructor.eventName(X_)))};this._queueCallback(m,this.tip,this._isAnimated())}update(){this._popper&&this._popper.update()}_isWithContent(){return!!this._getTitle()}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(i){const c=this._getTemplateFactory(i).toHtml();if(!c)return null;c.classList.remove(Ho,li),c.classList.add(`bs-${this.constructor.NAME}-auto`);const m=f(this.constructor.NAME).toString();return c.setAttribute("id",m),this._isAnimated()&&c.classList.add(Ho),c}setContent(i){this._newContent=i,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(i){return this._templateFactory?this._templateFactory.changeContent(i):this._templateFactory=new q_({...this._config,content:i,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{[z_]:this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(i){return this.constructor.getOrCreateInstance(i.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(Ho)}_isShown(){return this.tip&&this.tip.classList.contains(li)}_createPopper(i){const c=w(this._config.placement,[this,i,this._element]),m=av[c.toUpperCase()];return Mo(this._element,i,this._getPopperConfig(m))}_getOffset(){const{offset:i}=this._config;return typeof i=="string"?i.split(",").map(c=>Number.parseInt(c,10)):typeof i=="function"?c=>i(c,this._element):i}_resolvePossibleFunction(i){return w(i,[this._element,this._element])}_getPopperConfig(i){const c={placement:i,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:m=>{this._getTipElement().setAttribute("data-popper-placement",m.state.placement)}}]};return{...c,...w(this._config.popperConfig,[void 0,c])}}_setListeners(){const i=this._config.trigger.split(" ");for(const c of i)if(c==="click")T.on(this._element,this.constructor.eventName(nv),this._config.selector,m=>{this._initializeOnDelegatedTarget(m).toggle()});else if(c!==J_){const m=c===ur?this.constructor.eventName(iv):this.constructor.eventName(sv),y=c===ur?this.constructor.eventName(ov):this.constructor.eventName(rv);T.on(this._element,m,this._config.selector,x=>{const $=this._initializeOnDelegatedTarget(x);$._activeTrigger[x.type==="focusin"?Vo:ur]=!0,$._enter()}),T.on(this._element,y,this._config.selector,x=>{const $=this._initializeOnDelegatedTarget(x);$._activeTrigger[x.type==="focusout"?Vo:ur]=$._element.contains(x.relatedTarget),$._leave()})}this._hideModalHandler=()=>{this._element&&this.hide()},T.on(this._element.closest(eu),tu,this._hideModalHandler)}_fixTitle(){const i=this._element.getAttribute("title");i&&(!this._element.getAttribute("aria-label")&&!this._element.textContent.trim()&&this._element.setAttribute("aria-label",i),this._element.setAttribute("data-bs-original-title",i),this._element.removeAttribute("title"))}_enter(){if(this._isShown()||this._isHovered){this._isHovered=!0;return}this._isHovered=!0,this._setTimeout(()=>{this._isHovered&&this.show()},this._config.delay.show)}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout(()=>{this._isHovered||this.hide()},this._config.delay.hide))}_setTimeout(i,c){clearTimeout(this._timeout),this._timeout=setTimeout(i,c)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(i){const c=v.getDataAttributes(this._element);for(const m of Object.keys(c))W_.has(m)&&delete c[m];return i={...c,...typeof i=="object"&&i?i:{}},i=this._mergeConfigObj(i),i=this._configAfterMerge(i),this._typeCheckConfig(i),i}_configAfterMerge(i){return i.container=i.container===!1?document.body:_(i.container),typeof i.delay=="number"&&(i.delay={show:i.delay,hide:i.delay}),typeof i.title=="number"&&(i.title=i.title.toString()),typeof i.content=="number"&&(i.content=i.content.toString()),i}_getDelegateConfig(){const i={};for(const[c,m]of Object.entries(this._config))this.constructor.Default[c]!==m&&(i[c]=m);return i.selector=!1,i.trigger="manual",i}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(i){return this.each(function(){const c=Zn.getOrCreateInstance(this,i);if(typeof i=="string"){if(typeof c[i]>"u")throw new TypeError(`No method named "${i}"`);c[i]()}})}}R(Zn);const uv="popover",fv=".popover-header",dv=".popover-body",hv={...Zn.Default,content:"",offset:[0,8],placement:"right",template:'',trigger:"click"},pv={...Zn.DefaultType,content:"(null|string|element|function)"};class ci extends Zn{static get Default(){return hv}static get DefaultType(){return pv}static get NAME(){return uv}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{[fv]:this._getTitle(),[dv]:this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(i){return this.each(function(){const c=ci.getOrCreateInstance(this,i);if(typeof i=="string"){if(typeof c[i]>"u")throw new TypeError(`No method named "${i}"`);c[i]()}})}}R(ci);const mv="scrollspy",Uo=".bs.scrollspy",gv=".data-api",_v=`activate${Uo}`,nu=`click${Uo}`,vv=`load${Uo}${gv}`,bv="dropdown-item",Bs="active",yv='[data-bs-spy="scroll"]',jo="[href]",Ev=".nav, .list-group",su=".nav-link",wv=`${su}, .nav-item > ${su}, .list-group-item`,Tv=".dropdown",Av=".dropdown-toggle",Sv={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},Cv={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class fr extends K{constructor(i,c){super(i,c),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement=getComputedStyle(this._element).overflowY==="visible"?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return Sv}static get DefaultType(){return Cv}static get NAME(){return mv}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const i of this._observableSections.values())this._observer.observe(i)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(i){return i.target=_(i.target)||document.body,i.rootMargin=i.offset?`${i.offset}px 0px -30%`:i.rootMargin,typeof i.threshold=="string"&&(i.threshold=i.threshold.split(",").map(c=>Number.parseFloat(c))),i}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(T.off(this._config.target,nu),T.on(this._config.target,nu,jo,i=>{const c=this._observableSections.get(i.target.hash);if(c){i.preventDefault();const m=this._rootElement||window,y=c.offsetTop-this._element.offsetTop;if(m.scrollTo){m.scrollTo({top:y,behavior:"smooth"});return}m.scrollTop=y}}))}_getNewObserver(){const i={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver(c=>this._observerCallback(c),i)}_observerCallback(i){const c=$=>this._targetLinks.get(`#${$.target.id}`),m=$=>{this._previousScrollData.visibleEntryTop=$.target.offsetTop,this._process(c($))},y=(this._rootElement||document.documentElement).scrollTop,x=y>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=y;for(const $ of i){if(!$.isIntersecting){this._activeTarget=null,this._clearActiveClass(c($));continue}const W=$.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(x&&W){if(m($),!y)return;continue}!x&&!W&&m($)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const i=N.find(jo,this._config.target);for(const c of i){if(!c.hash||A(c))continue;const m=N.findOne(decodeURI(c.hash),this._element);E(m)&&(this._targetLinks.set(decodeURI(c.hash),c),this._observableSections.set(c.hash,m))}}_process(i){this._activeTarget!==i&&(this._clearActiveClass(this._config.target),this._activeTarget=i,i.classList.add(Bs),this._activateParents(i),T.trigger(this._element,_v,{relatedTarget:i}))}_activateParents(i){if(i.classList.contains(bv)){N.findOne(Av,i.closest(Tv)).classList.add(Bs);return}for(const c of N.parents(i,Ev))for(const m of N.prev(c,wv))m.classList.add(Bs)}_clearActiveClass(i){i.classList.remove(Bs);const c=N.find(`${jo}.${Bs}`,i);for(const m of c)m.classList.remove(Bs)}static jQueryInterface(i){return this.each(function(){const c=fr.getOrCreateInstance(this,i);if(typeof i=="string"){if(c[i]===void 0||i.startsWith("_")||i==="constructor")throw new TypeError(`No method named "${i}"`);c[i]()}})}}T.on(window,vv,()=>{for(const d of N.find(yv))fr.getOrCreateInstance(d)}),R(fr);const Ov="tab",es=".bs.tab",Rv=`hide${es}`,Nv=`hidden${es}`,xv=`show${es}`,$v=`shown${es}`,Pv=`click${es}`,Dv=`keydown${es}`,Lv=`load${es}`,Iv="ArrowLeft",ru="ArrowRight",Mv="ArrowUp",iu="ArrowDown",qo="Home",ou="End",ts="active",au="fade",Ko="show",kv="dropdown",lu=".dropdown-toggle",Bv=".dropdown-menu",Wo=`:not(${lu})`,Fv='.list-group, .nav, [role="tablist"]',Hv=".nav-item, .list-group-item",Vv=`.nav-link${Wo}, .list-group-item${Wo}, [role="tab"]${Wo}`,cu='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',Yo=`${Vv}, ${cu}`,Uv=`.${ts}[data-bs-toggle="tab"], .${ts}[data-bs-toggle="pill"], .${ts}[data-bs-toggle="list"]`;class ns extends K{constructor(i){super(i),this._parent=this._element.closest(Fv),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),T.on(this._element,Dv,c=>this._keydown(c)))}static get NAME(){return Ov}show(){const i=this._element;if(this._elemIsActive(i))return;const c=this._getActiveElem(),m=c?T.trigger(c,Rv,{relatedTarget:i}):null;T.trigger(i,xv,{relatedTarget:c}).defaultPrevented||m&&m.defaultPrevented||(this._deactivate(c,i),this._activate(i,c))}_activate(i,c){if(!i)return;i.classList.add(ts),this._activate(N.getElementFromSelector(i));const m=()=>{if(i.getAttribute("role")!=="tab"){i.classList.add(Ko);return}i.removeAttribute("tabindex"),i.setAttribute("aria-selected",!0),this._toggleDropDown(i,!0),T.trigger(i,$v,{relatedTarget:c})};this._queueCallback(m,i,i.classList.contains(au))}_deactivate(i,c){if(!i)return;i.classList.remove(ts),i.blur(),this._deactivate(N.getElementFromSelector(i));const m=()=>{if(i.getAttribute("role")!=="tab"){i.classList.remove(Ko);return}i.setAttribute("aria-selected",!1),i.setAttribute("tabindex","-1"),this._toggleDropDown(i,!1),T.trigger(i,Nv,{relatedTarget:c})};this._queueCallback(m,i,i.classList.contains(au))}_keydown(i){if(![Iv,ru,Mv,iu,qo,ou].includes(i.key))return;i.stopPropagation(),i.preventDefault();const c=this._getChildren().filter(y=>!A(y));let m;if([qo,ou].includes(i.key))m=c[i.key===qo?0:c.length-1];else{const y=[ru,iu].includes(i.key);m=D(c,i.target,y,!0)}m&&(m.focus({preventScroll:!0}),ns.getOrCreateInstance(m).show())}_getChildren(){return N.find(Yo,this._parent)}_getActiveElem(){return this._getChildren().find(i=>this._elemIsActive(i))||null}_setInitialAttributes(i,c){this._setAttributeIfNotExists(i,"role","tablist");for(const m of c)this._setInitialAttributesOnChild(m)}_setInitialAttributesOnChild(i){i=this._getInnerElement(i);const c=this._elemIsActive(i),m=this._getOuterElement(i);i.setAttribute("aria-selected",c),m!==i&&this._setAttributeIfNotExists(m,"role","presentation"),c||i.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(i,"role","tab"),this._setInitialAttributesOnTargetPanel(i)}_setInitialAttributesOnTargetPanel(i){const c=N.getElementFromSelector(i);c&&(this._setAttributeIfNotExists(c,"role","tabpanel"),i.id&&this._setAttributeIfNotExists(c,"aria-labelledby",`${i.id}`))}_toggleDropDown(i,c){const m=this._getOuterElement(i);if(!m.classList.contains(kv))return;const y=(x,$)=>{const W=N.findOne(x,m);W&&W.classList.toggle($,c)};y(lu,ts),y(Bv,Ko),m.setAttribute("aria-expanded",c)}_setAttributeIfNotExists(i,c,m){i.hasAttribute(c)||i.setAttribute(c,m)}_elemIsActive(i){return i.classList.contains(ts)}_getInnerElement(i){return i.matches(Yo)?i:N.findOne(Yo,i)}_getOuterElement(i){return i.closest(Hv)||i}static jQueryInterface(i){return this.each(function(){const c=ns.getOrCreateInstance(this);if(typeof i=="string"){if(c[i]===void 0||i.startsWith("_")||i==="constructor")throw new TypeError(`No method named "${i}"`);c[i]()}})}}T.on(document,Pv,cu,function(d){["A","AREA"].includes(this.tagName)&&d.preventDefault(),!A(this)&&ns.getOrCreateInstance(this).show()}),T.on(window,Lv,()=>{for(const d of N.find(Uv))ns.getOrCreateInstance(d)}),R(ns);const jv="toast",xn=".bs.toast",qv=`mouseover${xn}`,Kv=`mouseout${xn}`,Wv=`focusin${xn}`,Yv=`focusout${xn}`,zv=`hide${xn}`,Gv=`hidden${xn}`,Jv=`show${xn}`,Qv=`shown${xn}`,Xv="fade",uu="hide",ui="show",fi="showing",Zv={animation:"boolean",autohide:"boolean",delay:"number"},eb={animation:!0,autohide:!0,delay:5e3};class dr extends K{constructor(i,c){super(i,c),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return eb}static get DefaultType(){return Zv}static get NAME(){return jv}show(){if(T.trigger(this._element,Jv).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(Xv);const c=()=>{this._element.classList.remove(fi),T.trigger(this._element,Qv),this._maybeScheduleHide()};this._element.classList.remove(uu),F(this._element),this._element.classList.add(ui,fi),this._queueCallback(c,this._element,this._config.animation)}hide(){if(!this.isShown()||T.trigger(this._element,zv).defaultPrevented)return;const c=()=>{this._element.classList.add(uu),this._element.classList.remove(fi,ui),T.trigger(this._element,Gv)};this._element.classList.add(fi),this._queueCallback(c,this._element,this._config.animation)}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(ui),super.dispose()}isShown(){return this._element.classList.contains(ui)}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(i,c){switch(i.type){case"mouseover":case"mouseout":{this._hasMouseInteraction=c;break}case"focusin":case"focusout":{this._hasKeyboardInteraction=c;break}}if(c){this._clearTimeout();return}const m=i.relatedTarget;this._element===m||this._element.contains(m)||this._maybeScheduleHide()}_setListeners(){T.on(this._element,qv,i=>this._onInteraction(i,!0)),T.on(this._element,Kv,i=>this._onInteraction(i,!1)),T.on(this._element,Wv,i=>this._onInteraction(i,!0)),T.on(this._element,Yv,i=>this._onInteraction(i,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(i){return this.each(function(){const c=dr.getOrCreateInstance(this,i);if(typeof i=="string"){if(typeof c[i]>"u")throw new TypeError(`No method named "${i}"`);c[i](this)}})}}return oe(dr),R(dr),{Alert:we,Button:On,Carousel:Os,Collapse:Ns,Dropdown:jt,Modal:Xn,Offcanvas:pn,Popover:ci,ScrollSpy:fr,Tab:ns,Toast:dr,Tooltip:Zn}})}(Pi)),Pi.exports}nS();const Hp=new URLSearchParams(window.location.search),md=Hp.get("state"),gd=Hp.get("code"),_d=()=>{const e=kE(j0);e.use(HE()),e.use(ql),e.mount("#app")};md&&gd?mo("/api/signin/oidc",{provider:md,code:gd,redirect_uri:window.location.protocol+"//"+window.location.host+window.location.pathname}).then(e=>{window.location.search="",_d(),e.status||Qt().newNotification(e.message,"danger")}):_d(); diff --git a/src/static/client/dist/assets/index-VLGPfnEQ.js b/src/static/client/dist/assets/index-VLGPfnEQ.js deleted file mode 100644 index a9f46a1..0000000 --- a/src/static/client/dist/assets/index-VLGPfnEQ.js +++ /dev/null @@ -1,41 +0,0 @@ -(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))s(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&s(a)}).observe(document,{childList:!0,subtree:!0});function n(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(r){if(r.ep)return;r.ep=!0;const o=n(r);fetch(r.href,o)}})();/** -* @vue/shared v3.5.16 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**//*! #__NO_SIDE_EFFECTS__ */function fl(t){const e=Object.create(null);for(const n of t.split(","))e[n]=1;return n=>n in e}const Ft={},qs=[],on=()=>{},Zb=()=>!1,Ki=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&(t.charCodeAt(2)>122||t.charCodeAt(2)<97),dl=t=>t.startsWith("onUpdate:"),ee=Object.assign,hl=(t,e)=>{const n=t.indexOf(e);n>-1&&t.splice(n,1)},tv=Object.prototype.hasOwnProperty,Dt=(t,e)=>tv.call(t,e),dt=Array.isArray,Ks=t=>Vr(t)==="[object Map]",tr=t=>Vr(t)==="[object Set]",vu=t=>Vr(t)==="[object Date]",mt=t=>typeof t=="function",Jt=t=>typeof t=="string",cn=t=>typeof t=="symbol",Ht=t=>t!==null&&typeof t=="object",pl=t=>(Ht(t)||mt(t))&&mt(t.then)&&mt(t.catch),pd=Object.prototype.toString,Vr=t=>pd.call(t),ev=t=>Vr(t).slice(8,-1),md=t=>Vr(t)==="[object Object]",ml=t=>Jt(t)&&t!=="NaN"&&t[0]!=="-"&&""+parseInt(t,10)===t,Er=fl(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Wi=t=>{const e=Object.create(null);return n=>e[n]||(e[n]=t(n))},nv=/-(\w)/g,Ue=Wi(t=>t.replace(nv,(e,n)=>n?n.toUpperCase():"")),sv=/\B([A-Z])/g,ys=Wi(t=>t.replace(sv,"-$1").toLowerCase()),Yi=Wi(t=>t.charAt(0).toUpperCase()+t.slice(1)),Go=Wi(t=>t?`on${Yi(t)}`:""),Hn=(t,e)=>!Object.is(t,e),Ti=(t,...e)=>{for(let n=0;n{Object.defineProperty(t,e,{configurable:!0,enumerable:!1,writable:s,value:n})},Di=t=>{const e=parseFloat(t);return isNaN(e)?t:e},_d=t=>{const e=Jt(t)?Number(t):NaN;return isNaN(e)?t:e};let yu;const zi=()=>yu||(yu=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Gi(t){if(dt(t)){const e={};for(let n=0;n{if(n){const s=n.split(iv);s.length>1&&(e[s[0].trim()]=s[1].trim())}}),e}function yn(t){let e="";if(Jt(t))e=t;else if(dt(t))for(let n=0;ngs(n,e))}const vd=t=>!!(t&&t.__v_isRef===!0),Be=t=>Jt(t)?t:t==null?"":dt(t)||Ht(t)&&(t.toString===pd||!mt(t.toString))?vd(t)?Be(t.value):JSON.stringify(t,yd,2):String(t),yd=(t,e)=>vd(e)?yd(t,e.value):Ks(e)?{[`Map(${e.size})`]:[...e.entries()].reduce((n,[s,r],o)=>(n[Jo(s,o)+" =>"]=r,n),{})}:tr(e)?{[`Set(${e.size})`]:[...e.values()].map(n=>Jo(n))}:cn(e)?Jo(e):Ht(e)&&!dt(e)&&!md(e)?String(e):e,Jo=(t,e="")=>{var n;return cn(t)?`Symbol(${(n=t.description)!=null?n:e})`:t};/** -* @vue/reactivity v3.5.16 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let fe;class Ed{constructor(e=!1){this.detached=e,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=fe,!e&&fe&&(this.index=(fe.scopes||(fe.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let e,n;if(this.scopes)for(e=0,n=this.scopes.length;e0&&--this._on===0&&(fe=this.prevScope,this.prevScope=void 0)}stop(e){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n0)return;if(Tr){let e=Tr;for(Tr=void 0;e;){const n=e.next;e.next=void 0,e.flags&=-9,e=n}}let t;for(;wr;){let e=wr;for(wr=void 0;e;){const n=e.next;if(e.next=void 0,e.flags&=-9,e.flags&1)try{e.trigger()}catch(s){t||(t=s)}e=n}}if(t)throw t}function Od(t){for(let e=t.deps;e;e=e.nextDep)e.version=-1,e.prevActiveLink=e.dep.activeLink,e.dep.activeLink=e}function Rd(t){let e,n=t.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),vl(s),dv(s)):e=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}t.deps=e,t.depsTail=n}function Fa(t){for(let e=t.deps;e;e=e.nextDep)if(e.dep.version!==e.version||e.dep.computed&&(Nd(e.dep.computed)||e.dep.version!==e.version))return!0;return!!t._dirty}function Nd(t){if(t.flags&4&&!(t.flags&16)||(t.flags&=-17,t.globalVersion===$r)||(t.globalVersion=$r,!t.isSSR&&t.flags&128&&(!t.deps&&!t._dirty||!Fa(t))))return;t.flags|=2;const e=t.dep,n=Ut,s=Ye;Ut=t,Ye=!0;try{Od(t);const r=t.fn(t._value);(e.version===0||Hn(r,t._value))&&(t.flags|=128,t._value=r,e.version++)}catch(r){throw e.version++,r}finally{Ut=n,Ye=s,Rd(t),t.flags&=-3}}function vl(t,e=!1){const{dep:n,prevSub:s,nextSub:r}=t;if(s&&(s.nextSub=r,t.prevSub=void 0),r&&(r.prevSub=s,t.nextSub=void 0),n.subs===t&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let o=n.computed.deps;o;o=o.nextDep)vl(o,!0)}!e&&!--n.sc&&n.map&&n.map.delete(n.key)}function dv(t){const{prevDep:e,nextDep:n}=t;e&&(e.nextDep=n,t.prevDep=void 0),n&&(n.prevDep=e,t.nextDep=void 0)}let Ye=!0;const $d=[];function wn(){$d.push(Ye),Ye=!1}function Tn(){const t=$d.pop();Ye=t===void 0?!0:t}function Eu(t){const{cleanup:e}=t;if(t.cleanup=void 0,e){const n=Ut;Ut=void 0;try{e()}finally{Ut=n}}}let $r=0;class hv{constructor(e,n){this.sub=e,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class yl{constructor(e){this.computed=e,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(e){if(!Ut||!Ye||Ut===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==Ut)n=this.activeLink=new hv(Ut,this),Ut.deps?(n.prevDep=Ut.depsTail,Ut.depsTail.nextDep=n,Ut.depsTail=n):Ut.deps=Ut.depsTail=n,xd(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=Ut.depsTail,n.nextDep=void 0,Ut.depsTail.nextDep=n,Ut.depsTail=n,Ut.deps===n&&(Ut.deps=s)}return n}trigger(e){this.version++,$r++,this.notify(e)}notify(e){_l();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{bl()}}}function xd(t){if(t.dep.sc++,t.sub.flags&4){const e=t.dep.computed;if(e&&!t.dep.subs){e.flags|=20;for(let s=e.deps;s;s=s.nextDep)xd(s)}const n=t.dep.subs;n!==t&&(t.prevSub=n,n&&(n.nextSub=t)),t.dep.subs=t}}const Li=new WeakMap,hs=Symbol(""),Ha=Symbol(""),xr=Symbol("");function de(t,e,n){if(Ye&&Ut){let s=Li.get(t);s||Li.set(t,s=new Map);let r=s.get(n);r||(s.set(n,r=new yl),r.map=s,r.key=n),r.track()}}function _n(t,e,n,s,r,o){const a=Li.get(t);if(!a){$r++;return}const l=u=>{u&&u.trigger()};if(_l(),e==="clear")a.forEach(l);else{const u=dt(t),f=u&&ml(n);if(u&&n==="length"){const h=Number(s);a.forEach((p,g)=>{(g==="length"||g===xr||!cn(g)&&g>=h)&&l(p)})}else switch((n!==void 0||a.has(void 0))&&l(a.get(n)),f&&l(a.get(xr)),e){case"add":u?f&&l(a.get("length")):(l(a.get(hs)),Ks(t)&&l(a.get(Ha)));break;case"delete":u||(l(a.get(hs)),Ks(t)&&l(a.get(Ha)));break;case"set":Ks(t)&&l(a.get(hs));break}}bl()}function pv(t,e){const n=Li.get(t);return n&&n.get(e)}function Fs(t){const e=Ot(t);return e===t?e:(de(e,"iterate",xr),Fe(t)?e:e.map(ae))}function Ji(t){return de(t=Ot(t),"iterate",xr),t}const mv={__proto__:null,[Symbol.iterator](){return Xo(this,Symbol.iterator,ae)},concat(...t){return Fs(this).concat(...t.map(e=>dt(e)?Fs(e):e))},entries(){return Xo(this,"entries",t=>(t[1]=ae(t[1]),t))},every(t,e){return pn(this,"every",t,e,void 0,arguments)},filter(t,e){return pn(this,"filter",t,e,n=>n.map(ae),arguments)},find(t,e){return pn(this,"find",t,e,ae,arguments)},findIndex(t,e){return pn(this,"findIndex",t,e,void 0,arguments)},findLast(t,e){return pn(this,"findLast",t,e,ae,arguments)},findLastIndex(t,e){return pn(this,"findLastIndex",t,e,void 0,arguments)},forEach(t,e){return pn(this,"forEach",t,e,void 0,arguments)},includes(...t){return Zo(this,"includes",t)},indexOf(...t){return Zo(this,"indexOf",t)},join(t){return Fs(this).join(t)},lastIndexOf(...t){return Zo(this,"lastIndexOf",t)},map(t,e){return pn(this,"map",t,e,void 0,arguments)},pop(){return pr(this,"pop")},push(...t){return pr(this,"push",t)},reduce(t,...e){return wu(this,"reduce",t,e)},reduceRight(t,...e){return wu(this,"reduceRight",t,e)},shift(){return pr(this,"shift")},some(t,e){return pn(this,"some",t,e,void 0,arguments)},splice(...t){return pr(this,"splice",t)},toReversed(){return Fs(this).toReversed()},toSorted(t){return Fs(this).toSorted(t)},toSpliced(...t){return Fs(this).toSpliced(...t)},unshift(...t){return pr(this,"unshift",t)},values(){return Xo(this,"values",ae)}};function Xo(t,e,n){const s=Ji(t),r=s[e]();return s!==t&&!Fe(t)&&(r._next=r.next,r.next=()=>{const o=r._next();return o.value&&(o.value=n(o.value)),o}),r}const gv=Array.prototype;function pn(t,e,n,s,r,o){const a=Ji(t),l=a!==t&&!Fe(t),u=a[e];if(u!==gv[e]){const p=u.apply(t,o);return l?ae(p):p}let f=n;a!==t&&(l?f=function(p,g){return n.call(this,ae(p),g,t)}:n.length>2&&(f=function(p,g){return n.call(this,p,g,t)}));const h=u.call(a,f,s);return l&&r?r(h):h}function wu(t,e,n,s){const r=Ji(t);let o=n;return r!==t&&(Fe(t)?n.length>3&&(o=function(a,l,u){return n.call(this,a,l,u,t)}):o=function(a,l,u){return n.call(this,a,ae(l),u,t)}),r[e](o,...s)}function Zo(t,e,n){const s=Ot(t);de(s,"iterate",xr);const r=s[e](...n);return(r===-1||r===!1)&&Tl(n[0])?(n[0]=Ot(n[0]),s[e](...n)):r}function pr(t,e,n=[]){wn(),_l();const s=Ot(t)[e].apply(t,n);return bl(),Tn(),s}const _v=fl("__proto__,__v_isRef,__isVue"),Pd=new Set(Object.getOwnPropertyNames(Symbol).filter(t=>t!=="arguments"&&t!=="caller").map(t=>Symbol[t]).filter(cn));function bv(t){cn(t)||(t=String(t));const e=Ot(this);return de(e,"has",t),e.hasOwnProperty(t)}class Dd{constructor(e=!1,n=!1){this._isReadonly=e,this._isShallow=n}get(e,n,s){if(n==="__v_skip")return e.__v_skip;const r=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return o;if(n==="__v_raw")return s===(r?o?Rv:kd:o?Md:Id).get(e)||Object.getPrototypeOf(e)===Object.getPrototypeOf(s)?e:void 0;const a=dt(e);if(!r){let u;if(a&&(u=mv[n]))return u;if(n==="hasOwnProperty")return bv}const l=Reflect.get(e,n,Zt(e)?e:s);return(cn(n)?Pd.has(n):_v(n))||(r||de(e,"get",n),o)?l:Zt(l)?a&&ml(n)?l:l.value:Ht(l)?r?Fd(l):An(l):l}}class Ld extends Dd{constructor(e=!1){super(!1,e)}set(e,n,s,r){let o=e[n];if(!this._isShallow){const u=Un(o);if(!Fe(s)&&!Un(s)&&(o=Ot(o),s=Ot(s)),!dt(e)&&Zt(o)&&!Zt(s))return u?!1:(o.value=s,!0)}const a=dt(e)&&ml(n)?Number(n)t,_i=t=>Reflect.getPrototypeOf(t);function Tv(t,e,n){return function(...s){const r=this.__v_raw,o=Ot(r),a=Ks(o),l=t==="entries"||t===Symbol.iterator&&a,u=t==="keys"&&a,f=r[t](...s),h=n?Va:e?Ii:ae;return!e&&de(o,"iterate",u?Ha:hs),{next(){const{value:p,done:g}=f.next();return g?{value:p,done:g}:{value:l?[h(p[0]),h(p[1])]:h(p),done:g}},[Symbol.iterator](){return this}}}}function bi(t){return function(...e){return t==="delete"?!1:t==="clear"?void 0:this}}function Av(t,e){const n={get(r){const o=this.__v_raw,a=Ot(o),l=Ot(r);t||(Hn(r,l)&&de(a,"get",r),de(a,"get",l));const{has:u}=_i(a),f=e?Va:t?Ii:ae;if(u.call(a,r))return f(o.get(r));if(u.call(a,l))return f(o.get(l));o!==a&&o.get(r)},get size(){const r=this.__v_raw;return!t&&de(Ot(r),"iterate",hs),Reflect.get(r,"size",r)},has(r){const o=this.__v_raw,a=Ot(o),l=Ot(r);return t||(Hn(r,l)&&de(a,"has",r),de(a,"has",l)),r===l?o.has(r):o.has(r)||o.has(l)},forEach(r,o){const a=this,l=a.__v_raw,u=Ot(l),f=e?Va:t?Ii:ae;return!t&&de(u,"iterate",hs),l.forEach((h,p)=>r.call(o,f(h),f(p),a))}};return ee(n,t?{add:bi("add"),set:bi("set"),delete:bi("delete"),clear:bi("clear")}:{add(r){!e&&!Fe(r)&&!Un(r)&&(r=Ot(r));const o=Ot(this);return _i(o).has.call(o,r)||(o.add(r),_n(o,"add",r,r)),this},set(r,o){!e&&!Fe(o)&&!Un(o)&&(o=Ot(o));const a=Ot(this),{has:l,get:u}=_i(a);let f=l.call(a,r);f||(r=Ot(r),f=l.call(a,r));const h=u.call(a,r);return a.set(r,o),f?Hn(o,h)&&_n(a,"set",r,o):_n(a,"add",r,o),this},delete(r){const o=Ot(this),{has:a,get:l}=_i(o);let u=a.call(o,r);u||(r=Ot(r),u=a.call(o,r)),l&&l.call(o,r);const f=o.delete(r);return u&&_n(o,"delete",r,void 0),f},clear(){const r=Ot(this),o=r.size!==0,a=r.clear();return o&&_n(r,"clear",void 0,void 0),a}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=Tv(r,t,e)}),n}function El(t,e){const n=Av(t,e);return(s,r,o)=>r==="__v_isReactive"?!t:r==="__v_isReadonly"?t:r==="__v_raw"?s:Reflect.get(Dt(n,r)&&r in s?n:s,r,o)}const Sv={get:El(!1,!1)},Cv={get:El(!1,!0)},Ov={get:El(!0,!1)};const Id=new WeakMap,Md=new WeakMap,kd=new WeakMap,Rv=new WeakMap;function Nv(t){switch(t){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function $v(t){return t.__v_skip||!Object.isExtensible(t)?0:Nv(ev(t))}function An(t){return Un(t)?t:wl(t,!1,yv,Sv,Id)}function Bd(t){return wl(t,!1,wv,Cv,Md)}function Fd(t){return wl(t,!0,Ev,Ov,kd)}function wl(t,e,n,s,r){if(!Ht(t)||t.__v_raw&&!(e&&t.__v_isReactive))return t;const o=$v(t);if(o===0)return t;const a=r.get(t);if(a)return a;const l=new Proxy(t,o===2?s:n);return r.set(t,l),l}function Vn(t){return Un(t)?Vn(t.__v_raw):!!(t&&t.__v_isReactive)}function Un(t){return!!(t&&t.__v_isReadonly)}function Fe(t){return!!(t&&t.__v_isShallow)}function Tl(t){return t?!!t.__v_raw:!1}function Ot(t){const e=t&&t.__v_raw;return e?Ot(e):t}function Al(t){return!Dt(t,"__v_skip")&&Object.isExtensible(t)&&gd(t,"__v_skip",!0),t}const ae=t=>Ht(t)?An(t):t,Ii=t=>Ht(t)?Fd(t):t;function Zt(t){return t?t.__v_isRef===!0:!1}function Ae(t){return Hd(t,!1)}function xv(t){return Hd(t,!0)}function Hd(t,e){return Zt(t)?t:new Pv(t,e)}class Pv{constructor(e,n){this.dep=new yl,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?e:Ot(e),this._value=n?e:ae(e),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(e){const n=this._rawValue,s=this.__v_isShallow||Fe(e)||Un(e);e=s?e:Ot(e),Hn(e,n)&&(this._rawValue=e,this._value=s?e:ae(e),this.dep.trigger())}}function an(t){return Zt(t)?t.value:t}const Dv={get:(t,e,n)=>e==="__v_raw"?t:an(Reflect.get(t,e,n)),set:(t,e,n,s)=>{const r=t[e];return Zt(r)&&!Zt(n)?(r.value=n,!0):Reflect.set(t,e,n,s)}};function Vd(t){return Vn(t)?t:new Proxy(t,Dv)}function Lv(t){const e=dt(t)?new Array(t.length):{};for(const n in t)e[n]=Mv(t,n);return e}class Iv{constructor(e,n,s){this._object=e,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0}get value(){const e=this._object[this._key];return this._value=e===void 0?this._defaultValue:e}set value(e){this._object[this._key]=e}get dep(){return pv(Ot(this._object),this._key)}}function Mv(t,e,n){const s=t[e];return Zt(s)?s:new Iv(t,e,n)}class kv{constructor(e,n,s){this.fn=e,this.setter=n,this._value=void 0,this.dep=new yl(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=$r-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&Ut!==this)return Cd(this,!0),!0}get value(){const e=this.dep.track();return Nd(this),e&&(e.version=this.dep.version),this._value}set value(e){this.setter&&this.setter(e)}}function Bv(t,e,n=!1){let s,r;return mt(t)?s=t:(s=t.get,r=t.set),new kv(s,r,n)}const vi={},Mi=new WeakMap;let fs;function Fv(t,e=!1,n=fs){if(n){let s=Mi.get(n);s||Mi.set(n,s=[]),s.push(t)}}function Hv(t,e,n=Ft){const{immediate:s,deep:r,once:o,scheduler:a,augmentJob:l,call:u}=n,f=U=>r?U:Fe(U)||r===!1||r===0?bn(U,1):bn(U);let h,p,g,_,E=!1,A=!1;if(Zt(t)?(p=()=>t.value,E=Fe(t)):Vn(t)?(p=()=>f(t),E=!0):dt(t)?(A=!0,E=t.some(U=>Vn(U)||Fe(U)),p=()=>t.map(U=>{if(Zt(U))return U.value;if(Vn(U))return f(U);if(mt(U))return u?u(U,2):U()})):mt(t)?e?p=u?()=>u(t,2):t:p=()=>{if(g){wn();try{g()}finally{Tn()}}const U=fs;fs=h;try{return u?u(t,3,[_]):t(_)}finally{fs=U}}:p=on,e&&r){const U=p,q=r===!0?1/0:r;p=()=>bn(U(),q)}const H=Td(),I=()=>{h.stop(),H&&H.active&&hl(H.effects,h)};if(o&&e){const U=e;e=(...q)=>{U(...q),I()}}let F=A?new Array(t.length).fill(vi):vi;const k=U=>{if(!(!(h.flags&1)||!h.dirty&&!U))if(e){const q=h.run();if(r||E||(A?q.some((O,R)=>Hn(O,F[R])):Hn(q,F))){g&&g();const O=fs;fs=h;try{const R=[q,F===vi?void 0:A&&F[0]===vi?[]:F,_];F=q,u?u(e,3,R):e(...R)}finally{fs=O}}}else h.run()};return l&&l(k),h=new Ad(p),h.scheduler=a?()=>a(k,!1):k,_=U=>Fv(U,!1,h),g=h.onStop=()=>{const U=Mi.get(h);if(U){if(u)u(U,4);else for(const q of U)q();Mi.delete(h)}},e?s?k(!0):F=h.run():a?a(k.bind(null,!0),!0):h.run(),I.pause=h.pause.bind(h),I.resume=h.resume.bind(h),I.stop=I,I}function bn(t,e=1/0,n){if(e<=0||!Ht(t)||t.__v_skip||(n=n||new Set,n.has(t)))return t;if(n.add(t),e--,Zt(t))bn(t.value,e,n);else if(dt(t))for(let s=0;s{bn(s,e,n)});else if(md(t)){for(const s in t)bn(t[s],e,n);for(const s of Object.getOwnPropertySymbols(t))Object.prototype.propertyIsEnumerable.call(t,s)&&bn(t[s],e,n)}return t}/** -* @vue/runtime-core v3.5.16 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function Ur(t,e,n,s){try{return s?t(...s):t()}catch(r){jr(r,e,n)}}function ze(t,e,n,s){if(mt(t)){const r=Ur(t,e,n,s);return r&&pl(r)&&r.catch(o=>{jr(o,e,n)}),r}if(dt(t)){const r=[];for(let o=0;o>>1,r=ye[s],o=Pr(r);o=Pr(n)?ye.push(t):ye.splice(Uv(e),0,t),t.flags|=1,jd()}}function jd(){ki||(ki=Ud.then(Kd))}function Ua(t){dt(t)?Ws.push(...t):Mn&&t.id===-1?Mn.splice(Us+1,0,t):t.flags&1||(Ws.push(t),t.flags|=1),jd()}function Tu(t,e,n=sn+1){for(;nPr(n)-Pr(s));if(Ws.length=0,Mn){Mn.push(...e);return}for(Mn=e,Us=0;Ust.id==null?t.flags&2?-1:1/0:t.id;function Kd(t){try{for(sn=0;sn{s._d&&Iu(-1);const o=Bi(e);let a;try{a=t(...r)}finally{Bi(o),s._d&&Iu(1)}return a};return s._n=!0,s._c=!0,s._d=!0,s}function ln(t,e){if(Ee===null)return t;const n=no(Ee),s=t.dirs||(t.dirs=[]);for(let r=0;rt.__isTeleport,kn=Symbol("_leaveCb"),yi=Symbol("_enterCb");function zd(){const t={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Es(()=>{t.isMounted=!0}),sh(()=>{t.isUnmounting=!0}),t}const ke=[Function,Array],Gd={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:ke,onEnter:ke,onAfterEnter:ke,onEnterCancelled:ke,onBeforeLeave:ke,onLeave:ke,onAfterLeave:ke,onLeaveCancelled:ke,onBeforeAppear:ke,onAppear:ke,onAfterAppear:ke,onAppearCancelled:ke},Jd=t=>{const e=t.subTree;return e.component?Jd(e.component):e},qv={name:"BaseTransition",props:Gd,setup(t,{slots:e}){const n=Pl(),s=zd();return()=>{const r=e.default&&Cl(e.default(),!0);if(!r||!r.length)return;const o=Qd(r),a=Ot(t),{mode:l}=a;if(s.isLeaving)return ta(o);const u=Au(o);if(!u)return ta(o);let f=Dr(u,a,s,n,p=>f=p);u.type!==le&&_s(u,f);let h=n.subTree&&Au(n.subTree);if(h&&h.type!==le&&!rn(u,h)&&Jd(n).type!==le){let p=Dr(h,a,s,n);if(_s(h,p),l==="out-in"&&u.type!==le)return s.isLeaving=!0,p.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete p.afterLeave,h=void 0},ta(o);l==="in-out"&&u.type!==le?p.delayLeave=(g,_,E)=>{const A=Xd(s,h);A[String(h.key)]=h,g[kn]=()=>{_(),g[kn]=void 0,delete f.delayedLeave,h=void 0},f.delayedLeave=()=>{E(),delete f.delayedLeave,h=void 0}}:h=void 0}else h&&(h=void 0);return o}}};function Qd(t){let e=t[0];if(t.length>1){for(const n of t)if(n.type!==le){e=n;break}}return e}const Kv=qv;function Xd(t,e){const{leavingVNodes:n}=t;let s=n.get(e.type);return s||(s=Object.create(null),n.set(e.type,s)),s}function Dr(t,e,n,s,r){const{appear:o,mode:a,persisted:l=!1,onBeforeEnter:u,onEnter:f,onAfterEnter:h,onEnterCancelled:p,onBeforeLeave:g,onLeave:_,onAfterLeave:E,onLeaveCancelled:A,onBeforeAppear:H,onAppear:I,onAfterAppear:F,onAppearCancelled:k}=e,U=String(t.key),q=Xd(n,t),O=(S,D)=>{S&&ze(S,s,9,D)},R=(S,D)=>{const M=D[1];O(S,D),dt(S)?S.every(P=>P.length<=1)&&M():S.length<=1&&M()},w={mode:a,persisted:l,beforeEnter(S){let D=u;if(!n.isMounted)if(o)D=H||u;else return;S[kn]&&S[kn](!0);const M=q[U];M&&rn(t,M)&&M.el[kn]&&M.el[kn](),O(D,[S])},enter(S){let D=f,M=h,P=p;if(!n.isMounted)if(o)D=I||f,M=F||h,P=k||p;else return;let z=!1;const j=S[yi]=X=>{z||(z=!0,X?O(P,[S]):O(M,[S]),w.delayedLeave&&w.delayedLeave(),S[yi]=void 0)};D?R(D,[S,j]):j()},leave(S,D){const M=String(t.key);if(S[yi]&&S[yi](!0),n.isUnmounting)return D();O(g,[S]);let P=!1;const z=S[kn]=j=>{P||(P=!0,D(),j?O(A,[S]):O(E,[S]),S[kn]=void 0,q[M]===t&&delete q[M])};q[M]=t,_?R(_,[S,z]):z()},clone(S){const D=Dr(S,e,n,s,r);return r&&r(D),D}};return w}function ta(t){if(Xi(t))return t=qn(t),t.children=null,t}function Au(t){if(!Xi(t))return Yd(t.type)&&t.children?Qd(t.children):t;if(t.component)return t.component.subTree;const{shapeFlag:e,children:n}=t;if(n){if(e&16)return n[0];if(e&32&&mt(n.default))return n.default()}}function _s(t,e){t.shapeFlag&6&&t.component?(t.transition=e,_s(t.component.subTree,e)):t.shapeFlag&128?(t.ssContent.transition=e.clone(t.ssContent),t.ssFallback.transition=e.clone(t.ssFallback)):t.transition=e}function Cl(t,e=!1,n){let s=[],r=0;for(let o=0;o1)for(let o=0;oFi(E,e&&(dt(e)?e[A]:e),n,s,r));return}if(Ar(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&Fi(t,e,n,s.component.subTree);return}const o=s.shapeFlag&4?no(s.component):s.el,a=r?null:o,{i:l,r:u}=t,f=e&&e.r,h=l.refs===Ft?l.refs={}:l.refs,p=l.setupState,g=Ot(p),_=p===Ft?()=>!1:E=>Dt(g,E);if(f!=null&&f!==u&&(Jt(f)?(h[f]=null,_(f)&&(p[f]=null)):Zt(f)&&(f.value=null)),mt(u))Ur(u,l,12,[a,h]);else{const E=Jt(u),A=Zt(u);if(E||A){const H=()=>{if(t.f){const I=E?_(u)?p[u]:h[u]:u.value;r?dt(I)&&hl(I,o):dt(I)?I.includes(o)||I.push(o):E?(h[u]=[o],_(u)&&(p[u]=h[u])):(u.value=[o],t.k&&(h[t.k]=u.value))}else E?(h[u]=a,_(u)&&(p[u]=a)):A&&(u.value=a,t.k&&(h[t.k]=a))};a?(H.id=-1,Pe(H,n)):H()}}}zi().requestIdleCallback;zi().cancelIdleCallback;const Ar=t=>!!t.type.__asyncLoader,Xi=t=>t.type.__isKeepAlive;function Wv(t,e){eh(t,"a",e)}function Yv(t,e){eh(t,"da",e)}function eh(t,e,n=se){const s=t.__wdc||(t.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return t()});if(Zi(e,s,n),n){let r=n.parent;for(;r&&r.parent;)Xi(r.parent.vnode)&&zv(s,e,n,r),r=r.parent}}function zv(t,e,n,s){const r=Zi(e,t,s,!0);rh(()=>{hl(s[e],r)},n)}function Zi(t,e,n=se,s=!1){if(n){const r=n[t]||(n[t]=[]),o=e.__weh||(e.__weh=(...a)=>{wn();const l=bs(n),u=ze(e,n,t,a);return l(),Tn(),u});return s?r.unshift(o):r.push(o),o}}const Sn=t=>(e,n=se)=>{(!kr||t==="sp")&&Zi(t,(...s)=>e(...s),n)},Gv=Sn("bm"),Es=Sn("m"),Jv=Sn("bu"),nh=Sn("u"),sh=Sn("bum"),rh=Sn("um"),Qv=Sn("sp"),Xv=Sn("rtg"),Zv=Sn("rtc");function ty(t,e=se){Zi("ec",t,e)}const ih="components";function qr(t,e){return ah(ih,t,!0,e)||t}const oh=Symbol.for("v-ndc");function ey(t){return Jt(t)?ah(ih,t,!1)||t:t||oh}function ah(t,e,n=!0,s=!1){const r=Ee||se;if(r){const o=r.type;{const l=Gy(o,!1);if(l&&(l===e||l===Ue(e)||l===Yi(Ue(e))))return o}const a=Su(r[t]||o[t],e)||Su(r.appContext[t],e);return!a&&s?o:a}}function Su(t,e){return t&&(t[e]||t[Ue(e)]||t[Yi(Ue(e))])}function Ol(t,e,n,s){let r;const o=n,a=dt(t);if(a||Jt(t)){const l=a&&Vn(t);let u=!1,f=!1;l&&(u=!Fe(t),f=Un(t),t=Ji(t)),r=new Array(t.length);for(let h=0,p=t.length;he(l,u,void 0,o));else{const l=Object.keys(t);r=new Array(l.length);for(let u=0,f=l.length;ut?Nh(t)?no(t):ja(t.parent):null,Sr=ee(Object.create(null),{$:t=>t,$el:t=>t.vnode.el,$data:t=>t.data,$props:t=>t.props,$attrs:t=>t.attrs,$slots:t=>t.slots,$refs:t=>t.refs,$parent:t=>ja(t.parent),$root:t=>ja(t.root),$host:t=>t.ce,$emit:t=>t.emit,$options:t=>ch(t),$forceUpdate:t=>t.f||(t.f=()=>{Sl(t.update)}),$nextTick:t=>t.n||(t.n=Qi.bind(t.proxy)),$watch:t=>Ay.bind(t)}),ea=(t,e)=>t!==Ft&&!t.__isScriptSetup&&Dt(t,e),ny={get({_:t},e){if(e==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:o,accessCache:a,type:l,appContext:u}=t;let f;if(e[0]!=="$"){const _=a[e];if(_!==void 0)switch(_){case 1:return s[e];case 2:return r[e];case 4:return n[e];case 3:return o[e]}else{if(ea(s,e))return a[e]=1,s[e];if(r!==Ft&&Dt(r,e))return a[e]=2,r[e];if((f=t.propsOptions[0])&&Dt(f,e))return a[e]=3,o[e];if(n!==Ft&&Dt(n,e))return a[e]=4,n[e];qa&&(a[e]=0)}}const h=Sr[e];let p,g;if(h)return e==="$attrs"&&de(t.attrs,"get",""),h(t);if((p=l.__cssModules)&&(p=p[e]))return p;if(n!==Ft&&Dt(n,e))return a[e]=4,n[e];if(g=u.config.globalProperties,Dt(g,e))return g[e]},set({_:t},e,n){const{data:s,setupState:r,ctx:o}=t;return ea(r,e)?(r[e]=n,!0):s!==Ft&&Dt(s,e)?(s[e]=n,!0):Dt(t.props,e)||e[0]==="$"&&e.slice(1)in t?!1:(o[e]=n,!0)},has({_:{data:t,setupState:e,accessCache:n,ctx:s,appContext:r,propsOptions:o}},a){let l;return!!n[a]||t!==Ft&&Dt(t,a)||ea(e,a)||(l=o[0])&&Dt(l,a)||Dt(s,a)||Dt(Sr,a)||Dt(r.config.globalProperties,a)},defineProperty(t,e,n){return n.get!=null?t._.accessCache[e]=0:Dt(n,"value")&&this.set(t,e,n.value,null),Reflect.defineProperty(t,e,n)}};function Cu(t){return dt(t)?t.reduce((e,n)=>(e[n]=null,e),{}):t}function sy(t){const e=Pl();let n=t();return Ga(),pl(n)&&(n=n.catch(s=>{throw bs(e),s})),[n,()=>bs(e)]}let qa=!0;function ry(t){const e=ch(t),n=t.proxy,s=t.ctx;qa=!1,e.beforeCreate&&Ou(e.beforeCreate,t,"bc");const{data:r,computed:o,methods:a,watch:l,provide:u,inject:f,created:h,beforeMount:p,mounted:g,beforeUpdate:_,updated:E,activated:A,deactivated:H,beforeDestroy:I,beforeUnmount:F,destroyed:k,unmounted:U,render:q,renderTracked:O,renderTriggered:R,errorCaptured:w,serverPrefetch:S,expose:D,inheritAttrs:M,components:P,directives:z,filters:j}=e;if(f&&iy(f,s,null),a)for(const Q in a){const J=a[Q];mt(J)&&(s[Q]=J.bind(n))}if(r){const Q=r.call(n,n);Ht(Q)&&(t.data=An(Q))}if(qa=!0,o)for(const Q in o){const J=o[Q],ct=mt(J)?J.bind(n,n):mt(J.get)?J.get.bind(n,n):on,ut=!mt(J)&&mt(J.set)?J.set.bind(n):on,gt=zt({get:ct,set:ut});Object.defineProperty(s,Q,{enumerable:!0,configurable:!0,get:()=>gt.value,set:bt=>gt.value=bt})}if(l)for(const Q in l)lh(l[Q],s,n,Q);if(u){const Q=mt(u)?u.call(n):u;Reflect.ownKeys(Q).forEach(J=>{Ai(J,Q[J])})}h&&Ou(h,t,"c");function Y(Q,J){dt(J)?J.forEach(ct=>Q(ct.bind(n))):J&&Q(J.bind(n))}if(Y(Gv,p),Y(Es,g),Y(Jv,_),Y(nh,E),Y(Wv,A),Y(Yv,H),Y(ty,w),Y(Zv,O),Y(Xv,R),Y(sh,F),Y(rh,U),Y(Qv,S),dt(D))if(D.length){const Q=t.exposed||(t.exposed={});D.forEach(J=>{Object.defineProperty(Q,J,{get:()=>n[J],set:ct=>n[J]=ct})})}else t.exposed||(t.exposed={});q&&t.render===on&&(t.render=q),M!=null&&(t.inheritAttrs=M),P&&(t.components=P),z&&(t.directives=z),S&&th(t)}function iy(t,e,n=on){dt(t)&&(t=Ka(t));for(const s in t){const r=t[s];let o;Ht(r)?"default"in r?o=He(r.from||s,r.default,!0):o=He(r.from||s):o=He(r),Zt(o)?Object.defineProperty(e,s,{enumerable:!0,configurable:!0,get:()=>o.value,set:a=>o.value=a}):e[s]=o}}function Ou(t,e,n){ze(dt(t)?t.map(s=>s.bind(e.proxy)):t.bind(e.proxy),e,n)}function lh(t,e,n,s){let r=s.includes(".")?wh(n,s):()=>n[s];if(Jt(t)){const o=e[t];mt(o)&&Ys(r,o)}else if(mt(t))Ys(r,t.bind(n));else if(Ht(t))if(dt(t))t.forEach(o=>lh(o,e,n,s));else{const o=mt(t.handler)?t.handler.bind(n):e[t.handler];mt(o)&&Ys(r,o,t)}}function ch(t){const e=t.type,{mixins:n,extends:s}=e,{mixins:r,optionsCache:o,config:{optionMergeStrategies:a}}=t.appContext,l=o.get(e);let u;return l?u=l:!r.length&&!n&&!s?u=e:(u={},r.length&&r.forEach(f=>Hi(u,f,a,!0)),Hi(u,e,a)),Ht(e)&&o.set(e,u),u}function Hi(t,e,n,s=!1){const{mixins:r,extends:o}=e;o&&Hi(t,o,n,!0),r&&r.forEach(a=>Hi(t,a,n,!0));for(const a in e)if(!(s&&a==="expose")){const l=oy[a]||n&&n[a];t[a]=l?l(t[a],e[a]):e[a]}return t}const oy={data:Ru,props:Nu,emits:Nu,methods:vr,computed:vr,beforeCreate:ve,created:ve,beforeMount:ve,mounted:ve,beforeUpdate:ve,updated:ve,beforeDestroy:ve,beforeUnmount:ve,destroyed:ve,unmounted:ve,activated:ve,deactivated:ve,errorCaptured:ve,serverPrefetch:ve,components:vr,directives:vr,watch:ly,provide:Ru,inject:ay};function Ru(t,e){return e?t?function(){return ee(mt(t)?t.call(this,this):t,mt(e)?e.call(this,this):e)}:e:t}function ay(t,e){return vr(Ka(t),Ka(e))}function Ka(t){if(dt(t)){const e={};for(let n=0;n1)return n&&mt(e)?e.call(s&&s.proxy):e}}function fy(){return!!(se||Ee||ps)}const fh={},dh=()=>Object.create(fh),hh=t=>Object.getPrototypeOf(t)===fh;function dy(t,e,n,s=!1){const r={},o=dh();t.propsDefaults=Object.create(null),ph(t,e,r,o);for(const a in t.propsOptions[0])a in r||(r[a]=void 0);n?t.props=s?r:Bd(r):t.type.props?t.props=r:t.props=o,t.attrs=o}function hy(t,e,n,s){const{props:r,attrs:o,vnode:{patchFlag:a}}=t,l=Ot(r),[u]=t.propsOptions;let f=!1;if((s||a>0)&&!(a&16)){if(a&8){const h=t.vnode.dynamicProps;for(let p=0;p{u=!0;const[g,_]=mh(p,e,!0);ee(a,g),_&&l.push(..._)};!n&&e.mixins.length&&e.mixins.forEach(h),t.extends&&h(t.extends),t.mixins&&t.mixins.forEach(h)}if(!o&&!u)return Ht(t)&&s.set(t,qs),qs;if(dt(o))for(let h=0;ht[0]==="_"||t==="$stable",Nl=t=>dt(t)?t.map(We):[We(t)],my=(t,e,n)=>{if(e._n)return e;const s=De((...r)=>Nl(e(...r)),n);return s._c=!1,s},gh=(t,e,n)=>{const s=t._ctx;for(const r in t){if(Rl(r))continue;const o=t[r];if(mt(o))e[r]=my(r,o,s);else if(o!=null){const a=Nl(o);e[r]=()=>a}}},_h=(t,e)=>{const n=Nl(e);t.slots.default=()=>n},bh=(t,e,n)=>{for(const s in e)(n||!Rl(s))&&(t[s]=e[s])},gy=(t,e,n)=>{const s=t.slots=dh();if(t.vnode.shapeFlag&32){const r=e._;r?(bh(s,e,n),n&&gd(s,"_",r,!0)):gh(e,s)}else e&&_h(t,e)},_y=(t,e,n)=>{const{vnode:s,slots:r}=t;let o=!0,a=Ft;if(s.shapeFlag&32){const l=e._;l?n&&l===1?o=!1:bh(r,e,n):(o=!e.$stable,gh(e,r)),a=e}else e&&(_h(t,e),a={default:1});if(o)for(const l in r)!Rl(l)&&a[l]==null&&delete r[l]},Pe=ky;function by(t){return vy(t)}function vy(t,e){const n=zi();n.__VUE__=!0;const{insert:s,remove:r,patchProp:o,createElement:a,createText:l,createComment:u,setText:f,setElementText:h,parentNode:p,nextSibling:g,setScopeId:_=on,insertStaticContent:E}=t,A=(b,v,C,K=null,G=null,N=null,ot=void 0,rt=null,st=!!v.dynamicChildren)=>{if(b===v)return;b&&!rn(b,v)&&(K=V(b),bt(b,G,N,!0),b=null),v.patchFlag===-2&&(st=!1,v.dynamicChildren=null);const{type:Z,ref:ht,shapeFlag:at}=v;switch(Z){case eo:H(b,v,C,K);break;case le:I(b,v,C,K);break;case sa:b==null&&F(v,C,K,ot);break;case we:P(b,v,C,K,G,N,ot,rt,st);break;default:at&1?q(b,v,C,K,G,N,ot,rt,st):at&6?z(b,v,C,K,G,N,ot,rt,st):(at&64||at&128)&&Z.process(b,v,C,K,G,N,ot,rt,st,it)}ht!=null&&G&&Fi(ht,b&&b.ref,N,v||b,!v)},H=(b,v,C,K)=>{if(b==null)s(v.el=l(v.children),C,K);else{const G=v.el=b.el;v.children!==b.children&&f(G,v.children)}},I=(b,v,C,K)=>{b==null?s(v.el=u(v.children||""),C,K):v.el=b.el},F=(b,v,C,K)=>{[b.el,b.anchor]=E(b.children,v,C,K,b.el,b.anchor)},k=({el:b,anchor:v},C,K)=>{let G;for(;b&&b!==v;)G=g(b),s(b,C,K),b=G;s(v,C,K)},U=({el:b,anchor:v})=>{let C;for(;b&&b!==v;)C=g(b),r(b),b=C;r(v)},q=(b,v,C,K,G,N,ot,rt,st)=>{v.type==="svg"?ot="svg":v.type==="math"&&(ot="mathml"),b==null?O(v,C,K,G,N,ot,rt,st):S(b,v,G,N,ot,rt,st)},O=(b,v,C,K,G,N,ot,rt)=>{let st,Z;const{props:ht,shapeFlag:at,transition:ft,dirs:pt}=b;if(st=b.el=a(b.type,N,ht&&ht.is,ht),at&8?h(st,b.children):at&16&&w(b.children,st,null,K,G,na(b,N),ot,rt),pt&&ls(b,null,K,"created"),R(st,b,b.scopeId,ot,K),ht){for(const Mt in ht)Mt!=="value"&&!Er(Mt)&&o(st,Mt,null,ht[Mt],N,K);"value"in ht&&o(st,"value",null,ht.value,N),(Z=ht.onVnodeBeforeMount)&&Ze(Z,K,b)}pt&&ls(b,null,K,"beforeMount");const Et=yy(G,ft);Et&&ft.beforeEnter(st),s(st,v,C),((Z=ht&&ht.onVnodeMounted)||Et||pt)&&Pe(()=>{Z&&Ze(Z,K,b),Et&&ft.enter(st),pt&&ls(b,null,K,"mounted")},G)},R=(b,v,C,K,G)=>{if(C&&_(b,C),K)for(let N=0;N{for(let Z=st;Z{const rt=v.el=b.el;let{patchFlag:st,dynamicChildren:Z,dirs:ht}=v;st|=b.patchFlag&16;const at=b.props||Ft,ft=v.props||Ft;let pt;if(C&&cs(C,!1),(pt=ft.onVnodeBeforeUpdate)&&Ze(pt,C,v,b),ht&&ls(v,b,C,"beforeUpdate"),C&&cs(C,!0),(at.innerHTML&&ft.innerHTML==null||at.textContent&&ft.textContent==null)&&h(rt,""),Z?D(b.dynamicChildren,Z,rt,C,K,na(v,G),N):ot||J(b,v,rt,null,C,K,na(v,G),N,!1),st>0){if(st&16)M(rt,at,ft,C,G);else if(st&2&&at.class!==ft.class&&o(rt,"class",null,ft.class,G),st&4&&o(rt,"style",at.style,ft.style,G),st&8){const Et=v.dynamicProps;for(let Mt=0;Mt{pt&&Ze(pt,C,v,b),ht&&ls(v,b,C,"updated")},K)},D=(b,v,C,K,G,N,ot)=>{for(let rt=0;rt{if(v!==C){if(v!==Ft)for(const N in v)!Er(N)&&!(N in C)&&o(b,N,v[N],null,G,K);for(const N in C){if(Er(N))continue;const ot=C[N],rt=v[N];ot!==rt&&N!=="value"&&o(b,N,rt,ot,G,K)}"value"in C&&o(b,"value",v.value,C.value,G)}},P=(b,v,C,K,G,N,ot,rt,st)=>{const Z=v.el=b?b.el:l(""),ht=v.anchor=b?b.anchor:l("");let{patchFlag:at,dynamicChildren:ft,slotScopeIds:pt}=v;pt&&(rt=rt?rt.concat(pt):pt),b==null?(s(Z,C,K),s(ht,C,K),w(v.children||[],C,ht,G,N,ot,rt,st)):at>0&&at&64&&ft&&b.dynamicChildren?(D(b.dynamicChildren,ft,C,G,N,ot,rt),(v.key!=null||G&&v===G.subTree)&&vh(b,v,!0)):J(b,v,C,ht,G,N,ot,rt,st)},z=(b,v,C,K,G,N,ot,rt,st)=>{v.slotScopeIds=rt,b==null?v.shapeFlag&512?G.ctx.activate(v,C,K,ot,st):j(v,C,K,G,N,ot,st):X(b,v,st)},j=(b,v,C,K,G,N,ot)=>{const rt=b.component=qy(b,K,G);if(Xi(b)&&(rt.ctx.renderer=it),Ky(rt,!1,ot),rt.asyncDep){if(G&&G.registerDep(rt,Y,ot),!b.el){const st=rt.subTree=$t(le);I(null,st,v,C)}}else Y(rt,b,v,C,G,N,ot)},X=(b,v,C)=>{const K=v.component=b.component;if($y(b,v,C))if(K.asyncDep&&!K.asyncResolved){Q(K,v,C);return}else K.next=v,K.update();else v.el=b.el,K.vnode=v},Y=(b,v,C,K,G,N,ot)=>{const rt=()=>{if(b.isMounted){let{next:at,bu:ft,u:pt,parent:Et,vnode:Mt}=b;{const Oe=yh(b);if(Oe){at&&(at.el=Mt.el,Q(b,at,ot)),Oe.asyncDep.then(()=>{b.isUnmounted||rt()});return}}let xt=at,pe;cs(b,!1),at?(at.el=Mt.el,Q(b,at,ot)):at=Mt,ft&&Ti(ft),(pe=at.props&&at.props.onVnodeBeforeUpdate)&&Ze(pe,Et,at,Mt),cs(b,!0);const ce=Pu(b),Le=b.subTree;b.subTree=ce,A(Le,ce,p(Le.el),V(Le),b,G,N),at.el=ce.el,xt===null&&$l(b,ce.el),pt&&Pe(pt,G),(pe=at.props&&at.props.onVnodeUpdated)&&Pe(()=>Ze(pe,Et,at,Mt),G)}else{let at;const{el:ft,props:pt}=v,{bm:Et,m:Mt,parent:xt,root:pe,type:ce}=b,Le=Ar(v);cs(b,!1),Et&&Ti(Et),!Le&&(at=pt&&pt.onVnodeBeforeMount)&&Ze(at,xt,v),cs(b,!0);{pe.ce&&pe.ce._injectChildStyle(ce);const Oe=b.subTree=Pu(b);A(null,Oe,C,K,b,G,N),v.el=Oe.el}if(Mt&&Pe(Mt,G),!Le&&(at=pt&&pt.onVnodeMounted)){const Oe=v;Pe(()=>Ze(at,xt,Oe),G)}(v.shapeFlag&256||xt&&Ar(xt.vnode)&&xt.vnode.shapeFlag&256)&&b.a&&Pe(b.a,G),b.isMounted=!0,v=C=K=null}};b.scope.on();const st=b.effect=new Ad(rt);b.scope.off();const Z=b.update=st.run.bind(st),ht=b.job=st.runIfDirty.bind(st);ht.i=b,ht.id=b.uid,st.scheduler=()=>Sl(ht),cs(b,!0),Z()},Q=(b,v,C)=>{v.component=b;const K=b.vnode.props;b.vnode=v,b.next=null,hy(b,v.props,K,C),_y(b,v.children,C),wn(),Tu(b),Tn()},J=(b,v,C,K,G,N,ot,rt,st=!1)=>{const Z=b&&b.children,ht=b?b.shapeFlag:0,at=v.children,{patchFlag:ft,shapeFlag:pt}=v;if(ft>0){if(ft&128){ut(Z,at,C,K,G,N,ot,rt,st);return}else if(ft&256){ct(Z,at,C,K,G,N,ot,rt,st);return}}pt&8?(ht&16&&Wt(Z,G,N),at!==Z&&h(C,at)):ht&16?pt&16?ut(Z,at,C,K,G,N,ot,rt,st):Wt(Z,G,N,!0):(ht&8&&h(C,""),pt&16&&w(at,C,K,G,N,ot,rt,st))},ct=(b,v,C,K,G,N,ot,rt,st)=>{b=b||qs,v=v||qs;const Z=b.length,ht=v.length,at=Math.min(Z,ht);let ft;for(ft=0;ftht?Wt(b,G,N,!0,!1,at):w(v,C,K,G,N,ot,rt,st,at)},ut=(b,v,C,K,G,N,ot,rt,st)=>{let Z=0;const ht=v.length;let at=b.length-1,ft=ht-1;for(;Z<=at&&Z<=ft;){const pt=b[Z],Et=v[Z]=st?Bn(v[Z]):We(v[Z]);if(rn(pt,Et))A(pt,Et,C,null,G,N,ot,rt,st);else break;Z++}for(;Z<=at&&Z<=ft;){const pt=b[at],Et=v[ft]=st?Bn(v[ft]):We(v[ft]);if(rn(pt,Et))A(pt,Et,C,null,G,N,ot,rt,st);else break;at--,ft--}if(Z>at){if(Z<=ft){const pt=ft+1,Et=ptft)for(;Z<=at;)bt(b[Z],G,N,!0),Z++;else{const pt=Z,Et=Z,Mt=new Map;for(Z=Et;Z<=ft;Z++){const me=v[Z]=st?Bn(v[Z]):We(v[Z]);me.key!=null&&Mt.set(me.key,Z)}let xt,pe=0;const ce=ft-Et+1;let Le=!1,Oe=0;const Wn=new Array(ce);for(Z=0;Z=ce){bt(me,G,N,!0);continue}let re;if(me.key!=null)re=Mt.get(me.key);else for(xt=Et;xt<=ft;xt++)if(Wn[xt-Et]===0&&rn(me,v[xt])){re=xt;break}re===void 0?bt(me,G,N,!0):(Wn[re-Et]=Z+1,re>=Oe?Oe=re:Le=!0,A(me,v[re],C,null,G,N,ot,rt,st),pe++)}const Cn=Le?Ey(Wn):qs;for(xt=Cn.length-1,Z=ce-1;Z>=0;Z--){const me=Et+Z,re=v[me],zr=me+1{const{el:N,type:ot,transition:rt,children:st,shapeFlag:Z}=b;if(Z&6){gt(b.component.subTree,v,C,K);return}if(Z&128){b.suspense.move(v,C,K);return}if(Z&64){ot.move(b,v,C,it);return}if(ot===we){s(N,v,C);for(let at=0;atrt.enter(N),G);else{const{leave:at,delayLeave:ft,afterLeave:pt}=rt,Et=()=>{b.ctx.isUnmounted?r(N):s(N,v,C)},Mt=()=>{at(N,()=>{Et(),pt&&pt()})};ft?ft(N,Et,Mt):Mt()}else s(N,v,C)},bt=(b,v,C,K=!1,G=!1)=>{const{type:N,props:ot,ref:rt,children:st,dynamicChildren:Z,shapeFlag:ht,patchFlag:at,dirs:ft,cacheIndex:pt}=b;if(at===-2&&(G=!1),rt!=null&&(wn(),Fi(rt,null,C,b,!0),Tn()),pt!=null&&(v.renderCache[pt]=void 0),ht&256){v.ctx.deactivate(b);return}const Et=ht&1&&ft,Mt=!Ar(b);let xt;if(Mt&&(xt=ot&&ot.onVnodeBeforeUnmount)&&Ze(xt,v,b),ht&6)jt(b.component,C,K);else{if(ht&128){b.suspense.unmount(C,K);return}Et&&ls(b,null,v,"beforeUnmount"),ht&64?b.type.remove(b,v,C,it,K):Z&&!Z.hasOnce&&(N!==we||at>0&&at&64)?Wt(Z,v,C,!1,!0):(N===we&&at&384||!G&&ht&16)&&Wt(st,v,C),K&&Rt(b)}(Mt&&(xt=ot&&ot.onVnodeUnmounted)||Et)&&Pe(()=>{xt&&Ze(xt,v,b),Et&&ls(b,null,v,"unmounted")},C)},Rt=b=>{const{type:v,el:C,anchor:K,transition:G}=b;if(v===we){It(C,K);return}if(v===sa){U(b);return}const N=()=>{r(C),G&&!G.persisted&&G.afterLeave&&G.afterLeave()};if(b.shapeFlag&1&&G&&!G.persisted){const{leave:ot,delayLeave:rt}=G,st=()=>ot(C,N);rt?rt(b.el,N,st):st()}else N()},It=(b,v)=>{let C;for(;b!==v;)C=g(b),r(b),b=C;r(v)},jt=(b,v,C)=>{const{bum:K,scope:G,job:N,subTree:ot,um:rt,m:st,a:Z,parent:ht,slots:{__:at}}=b;xu(st),xu(Z),K&&Ti(K),ht&&dt(at)&&at.forEach(ft=>{ht.renderCache[ft]=void 0}),G.stop(),N&&(N.flags|=8,bt(ot,b,v,C)),rt&&Pe(rt,v),Pe(()=>{b.isUnmounted=!0},v),v&&v.pendingBranch&&!v.isUnmounted&&b.asyncDep&&!b.asyncResolved&&b.suspenseId===v.pendingId&&(v.deps--,v.deps===0&&v.resolve())},Wt=(b,v,C,K=!1,G=!1,N=0)=>{for(let ot=N;ot{if(b.shapeFlag&6)return V(b.component.subTree);if(b.shapeFlag&128)return b.suspense.next();const v=g(b.anchor||b.el),C=v&&v[jv];return C?g(C):v};let T=!1;const et=(b,v,C)=>{b==null?v._vnode&&bt(v._vnode,null,null,!0):A(v._vnode||null,b,v,null,null,null,C),v._vnode=b,T||(T=!0,Tu(),qd(),T=!1)},it={p:A,um:bt,m:gt,r:Rt,mt:j,mc:w,pc:J,pbc:D,n:V,o:t};return{render:et,hydrate:void 0,createApp:uy(et)}}function na({type:t,props:e},n){return n==="svg"&&t==="foreignObject"||n==="mathml"&&t==="annotation-xml"&&e&&e.encoding&&e.encoding.includes("html")?void 0:n}function cs({effect:t,job:e},n){n?(t.flags|=32,e.flags|=4):(t.flags&=-33,e.flags&=-5)}function yy(t,e){return(!t||t&&!t.pendingBranch)&&e&&!e.persisted}function vh(t,e,n=!1){const s=t.children,r=e.children;if(dt(s)&&dt(r))for(let o=0;o>1,t[n[l]]0&&(e[s]=n[o-1]),n[o]=s)}}for(o=n.length,a=n[o-1];o-- >0;)n[o]=a,a=e[a];return n}function yh(t){const e=t.subTree.component;if(e)return e.asyncDep&&!e.asyncResolved?e:yh(e)}function xu(t){if(t)for(let e=0;eHe(wy);function Ys(t,e,n){return Eh(t,e,n)}function Eh(t,e,n=Ft){const{immediate:s,deep:r,flush:o,once:a}=n,l=ee({},n),u=e&&s||!e&&o!=="post";let f;if(kr){if(o==="sync"){const _=Ty();f=_.__watcherHandles||(_.__watcherHandles=[])}else if(!u){const _=()=>{};return _.stop=on,_.resume=on,_.pause=on,_}}const h=se;l.call=(_,E,A)=>ze(_,h,E,A);let p=!1;o==="post"?l.scheduler=_=>{Pe(_,h&&h.suspense)}:o!=="sync"&&(p=!0,l.scheduler=(_,E)=>{E?_():Sl(_)}),l.augmentJob=_=>{e&&(_.flags|=4),p&&(_.flags|=2,h&&(_.id=h.uid,_.i=h))};const g=Hv(t,e,l);return kr&&(f?f.push(g):u&&g()),g}function Ay(t,e,n){const s=this.proxy,r=Jt(t)?t.includes(".")?wh(s,t):()=>s[t]:t.bind(s,s);let o;mt(e)?o=e:(o=e.handler,n=e);const a=bs(this),l=Eh(r,o.bind(s),n);return a(),l}function wh(t,e){const n=e.split(".");return()=>{let s=t;for(let r=0;re==="modelValue"||e==="model-value"?t.modelModifiers:t[`${e}Modifiers`]||t[`${Ue(e)}Modifiers`]||t[`${ys(e)}Modifiers`];function Cy(t,e,...n){if(t.isUnmounted)return;const s=t.vnode.props||Ft;let r=n;const o=e.startsWith("update:"),a=o&&Sy(s,e.slice(7));a&&(a.trim&&(r=n.map(h=>Jt(h)?h.trim():h)),a.number&&(r=n.map(Di)));let l,u=s[l=Go(e)]||s[l=Go(Ue(e))];!u&&o&&(u=s[l=Go(ys(e))]),u&&ze(u,t,6,r);const f=s[l+"Once"];if(f){if(!t.emitted)t.emitted={};else if(t.emitted[l])return;t.emitted[l]=!0,ze(f,t,6,r)}}function Th(t,e,n=!1){const s=e.emitsCache,r=s.get(t);if(r!==void 0)return r;const o=t.emits;let a={},l=!1;if(!mt(t)){const u=f=>{const h=Th(f,e,!0);h&&(l=!0,ee(a,h))};!n&&e.mixins.length&&e.mixins.forEach(u),t.extends&&u(t.extends),t.mixins&&t.mixins.forEach(u)}return!o&&!l?(Ht(t)&&s.set(t,null),null):(dt(o)?o.forEach(u=>a[u]=null):ee(a,o),Ht(t)&&s.set(t,a),a)}function to(t,e){return!t||!Ki(e)?!1:(e=e.slice(2).replace(/Once$/,""),Dt(t,e[0].toLowerCase()+e.slice(1))||Dt(t,ys(e))||Dt(t,e))}function Pu(t){const{type:e,vnode:n,proxy:s,withProxy:r,propsOptions:[o],slots:a,attrs:l,emit:u,render:f,renderCache:h,props:p,data:g,setupState:_,ctx:E,inheritAttrs:A}=t,H=Bi(t);let I,F;try{if(n.shapeFlag&4){const U=r||s,q=U;I=We(f.call(q,U,h,p,_,g,E)),F=l}else{const U=e;I=We(U.length>1?U(p,{attrs:l,slots:a,emit:u}):U(p,null)),F=e.props?l:Ry(l)}}catch(U){Cr.length=0,jr(U,t,1),I=$t(le)}let k=I;if(F&&A!==!1){const U=Object.keys(F),{shapeFlag:q}=k;U.length&&q&7&&(o&&U.some(dl)&&(F=Ny(F,o)),k=qn(k,F,!1,!0))}return n.dirs&&(k=qn(k,null,!1,!0),k.dirs=k.dirs?k.dirs.concat(n.dirs):n.dirs),n.transition&&_s(k,n.transition),I=k,Bi(H),I}function Oy(t,e=!0){let n;for(let s=0;s{let e;for(const n in t)(n==="class"||n==="style"||Ki(n))&&((e||(e={}))[n]=t[n]);return e},Ny=(t,e)=>{const n={};for(const s in t)(!dl(s)||!(s.slice(9)in e))&&(n[s]=t[s]);return n};function $y(t,e,n){const{props:s,children:r,component:o}=t,{props:a,children:l,patchFlag:u}=e,f=o.emitsOptions;if(e.dirs||e.transition)return!0;if(n&&u>=0){if(u&1024)return!0;if(u&16)return s?Du(s,a,f):!!a;if(u&8){const h=e.dynamicProps;for(let p=0;pt.__isSuspense;let Ya=0;const xy={name:"Suspense",__isSuspense:!0,process(t,e,n,s,r,o,a,l,u,f){if(t==null)Dy(e,n,s,r,o,a,l,u,f);else{if(o&&o.deps>0&&!t.suspense.isInFallback){e.suspense=t.suspense,e.suspense.vnode=e,e.el=t.el;return}Ly(t,e,n,s,r,a,l,u,f)}},hydrate:Iy,normalize:My},Py=xy;function Lr(t,e){const n=t.props&&t.props[e];mt(n)&&n()}function Dy(t,e,n,s,r,o,a,l,u){const{p:f,o:{createElement:h}}=u,p=h("div"),g=t.suspense=Sh(t,r,s,e,p,n,o,a,l,u);f(null,g.pendingBranch=t.ssContent,p,null,s,g,o,a),g.deps>0?(Lr(t,"onPending"),Lr(t,"onFallback"),f(null,t.ssFallback,e,n,s,null,o,a),zs(g,t.ssFallback)):g.resolve(!1,!0)}function Ly(t,e,n,s,r,o,a,l,{p:u,um:f,o:{createElement:h}}){const p=e.suspense=t.suspense;p.vnode=e,e.el=t.el;const g=e.ssContent,_=e.ssFallback,{activeBranch:E,pendingBranch:A,isInFallback:H,isHydrating:I}=p;if(A)p.pendingBranch=g,rn(g,A)?(u(A,g,p.hiddenContainer,null,r,p,o,a,l),p.deps<=0?p.resolve():H&&(I||(u(E,_,n,s,r,null,o,a,l),zs(p,_)))):(p.pendingId=Ya++,I?(p.isHydrating=!1,p.activeBranch=A):f(A,r,p),p.deps=0,p.effects.length=0,p.hiddenContainer=h("div"),H?(u(null,g,p.hiddenContainer,null,r,p,o,a,l),p.deps<=0?p.resolve():(u(E,_,n,s,r,null,o,a,l),zs(p,_))):E&&rn(g,E)?(u(E,g,n,s,r,p,o,a,l),p.resolve(!0)):(u(null,g,p.hiddenContainer,null,r,p,o,a,l),p.deps<=0&&p.resolve()));else if(E&&rn(g,E))u(E,g,n,s,r,p,o,a,l),zs(p,g);else if(Lr(e,"onPending"),p.pendingBranch=g,g.shapeFlag&512?p.pendingId=g.component.suspenseId:p.pendingId=Ya++,u(null,g,p.hiddenContainer,null,r,p,o,a,l),p.deps<=0)p.resolve();else{const{timeout:F,pendingId:k}=p;F>0?setTimeout(()=>{p.pendingId===k&&p.fallback(_)},F):F===0&&p.fallback(_)}}function Sh(t,e,n,s,r,o,a,l,u,f,h=!1){const{p,m:g,um:_,n:E,o:{parentNode:A,remove:H}}=f;let I;const F=By(t);F&&e&&e.pendingBranch&&(I=e.pendingId,e.deps++);const k=t.props?_d(t.props.timeout):void 0,U=o,q={vnode:t,parent:e,parentComponent:n,namespace:a,container:s,hiddenContainer:r,deps:0,pendingId:Ya++,timeout:typeof k=="number"?k:-1,activeBranch:null,pendingBranch:null,isInFallback:!h,isHydrating:h,isUnmounted:!1,effects:[],resolve(O=!1,R=!1){const{vnode:w,activeBranch:S,pendingBranch:D,pendingId:M,effects:P,parentComponent:z,container:j}=q;let X=!1;q.isHydrating?q.isHydrating=!1:O||(X=S&&D.transition&&D.transition.mode==="out-in",X&&(S.transition.afterLeave=()=>{M===q.pendingId&&(g(D,j,o===U?E(S):o,0),Ua(P))}),S&&(A(S.el)===j&&(o=E(S)),_(S,z,q,!0)),X||g(D,j,o,0)),zs(q,D),q.pendingBranch=null,q.isInFallback=!1;let Y=q.parent,Q=!1;for(;Y;){if(Y.pendingBranch){Y.effects.push(...P),Q=!0;break}Y=Y.parent}!Q&&!X&&Ua(P),q.effects=[],F&&e&&e.pendingBranch&&I===e.pendingId&&(e.deps--,e.deps===0&&!R&&e.resolve()),Lr(w,"onResolve")},fallback(O){if(!q.pendingBranch)return;const{vnode:R,activeBranch:w,parentComponent:S,container:D,namespace:M}=q;Lr(R,"onFallback");const P=E(w),z=()=>{q.isInFallback&&(p(null,O,D,P,S,null,M,l,u),zs(q,O))},j=O.transition&&O.transition.mode==="out-in";j&&(w.transition.afterLeave=z),q.isInFallback=!0,_(w,S,null,!0),j||z()},move(O,R,w){q.activeBranch&&g(q.activeBranch,O,R,w),q.container=O},next(){return q.activeBranch&&E(q.activeBranch)},registerDep(O,R,w){const S=!!q.pendingBranch;S&&q.deps++;const D=O.vnode.el;O.asyncDep.catch(M=>{jr(M,O,0)}).then(M=>{if(O.isUnmounted||q.isUnmounted||q.pendingId!==O.suspenseId)return;O.asyncResolved=!0;const{vnode:P}=O;Ja(O,M),D&&(P.el=D);const z=!D&&O.subTree.el;R(O,P,A(D||O.subTree.el),D?null:E(O.subTree),q,a,w),z&&H(z),$l(O,P.el),S&&--q.deps===0&&q.resolve()})},unmount(O,R){q.isUnmounted=!0,q.activeBranch&&_(q.activeBranch,n,O,R),q.pendingBranch&&_(q.pendingBranch,n,O,R)}};return q}function Iy(t,e,n,s,r,o,a,l,u){const f=e.suspense=Sh(e,s,n,t.parentNode,document.createElement("div"),null,r,o,a,l,!0),h=u(t,f.pendingBranch=e.ssContent,n,f,o,a);return f.deps===0&&f.resolve(!1,!0),h}function My(t){const{shapeFlag:e,children:n}=t,s=e&32;t.ssContent=Lu(s?n.default:n),t.ssFallback=s?Lu(n.fallback):$t(le)}function Lu(t){let e;if(mt(t)){const n=Gs&&t._c;n&&(t._d=!1,Tt()),t=t(),n&&(t._d=!0,e=Te,Ch())}return dt(t)&&(t=Oy(t)),t=We(t),e&&!t.dynamicChildren&&(t.dynamicChildren=e.filter(n=>n!==t)),t}function ky(t,e){e&&e.pendingBranch?dt(t)?e.effects.push(...t):e.effects.push(t):Ua(t)}function zs(t,e){t.activeBranch=e;const{vnode:n,parentComponent:s}=t;let r=e.el;for(;!r&&e.component;)e=e.component.subTree,r=e.el;n.el=r,s&&s.subTree===n&&(s.vnode.el=r,$l(s,r))}function By(t){const e=t.props&&t.props.suspensible;return e!=null&&e!==!1}const we=Symbol.for("v-fgt"),eo=Symbol.for("v-txt"),le=Symbol.for("v-cmt"),sa=Symbol.for("v-stc"),Cr=[];let Te=null;function Tt(t=!1){Cr.push(Te=t?null:[])}function Ch(){Cr.pop(),Te=Cr[Cr.length-1]||null}let Gs=1;function Iu(t,e=!1){Gs+=t,t<0&&Te&&e&&(Te.hasOnce=!0)}function Oh(t){return t.dynamicChildren=Gs>0?Te||qs:null,Ch(),Gs>0&&Te&&Te.push(t),t}function Lt(t,e,n,s,r,o){return Oh(L(t,e,n,s,r,o,!0))}function jn(t,e,n,s,r){return Oh($t(t,e,n,s,r,!0))}function Ir(t){return t?t.__v_isVNode===!0:!1}function rn(t,e){return t.type===e.type&&t.key===e.key}const Rh=({key:t})=>t??null,Si=({ref:t,ref_key:e,ref_for:n})=>(typeof t=="number"&&(t=""+t),t!=null?Jt(t)||Zt(t)||mt(t)?{i:Ee,r:t,k:e,f:!!n}:t:null);function L(t,e=null,n=null,s=0,r=null,o=t===we?0:1,a=!1,l=!1){const u={__v_isVNode:!0,__v_skip:!0,type:t,props:e,key:e&&Rh(e),ref:e&&Si(e),scopeId:Wd,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Ee};return l?(xl(u,n),o&128&&t.normalize(u)):n&&(u.shapeFlag|=Jt(n)?8:16),Gs>0&&!a&&Te&&(u.patchFlag>0||o&6)&&u.patchFlag!==32&&Te.push(u),u}const $t=Fy;function Fy(t,e=null,n=null,s=0,r=null,o=!1){if((!t||t===oh)&&(t=le),Ir(t)){const l=qn(t,e,!0);return n&&xl(l,n),Gs>0&&!o&&Te&&(l.shapeFlag&6?Te[Te.indexOf(t)]=l:Te.push(l)),l.patchFlag=-2,l}if(Jy(t)&&(t=t.__vccOpts),e){e=Hy(e);let{class:l,style:u}=e;l&&!Jt(l)&&(e.class=yn(l)),Ht(u)&&(Tl(u)&&!dt(u)&&(u=ee({},u)),e.style=Gi(u))}const a=Jt(t)?1:Ah(t)?128:Yd(t)?64:Ht(t)?4:mt(t)?2:0;return L(t,e,n,s,r,a,o,!0)}function Hy(t){return t?Tl(t)||hh(t)?ee({},t):t:null}function qn(t,e,n=!1,s=!1){const{props:r,ref:o,patchFlag:a,children:l,transition:u}=t,f=e?Vy(r||{},e):r,h={__v_isVNode:!0,__v_skip:!0,type:t.type,props:f,key:f&&Rh(f),ref:e&&e.ref?n&&o?dt(o)?o.concat(Si(e)):[o,Si(e)]:Si(e):o,scopeId:t.scopeId,slotScopeIds:t.slotScopeIds,children:l,target:t.target,targetStart:t.targetStart,targetAnchor:t.targetAnchor,staticCount:t.staticCount,shapeFlag:t.shapeFlag,patchFlag:e&&t.type!==we?a===-1?16:a|16:a,dynamicProps:t.dynamicProps,dynamicChildren:t.dynamicChildren,appContext:t.appContext,dirs:t.dirs,transition:u,component:t.component,suspense:t.suspense,ssContent:t.ssContent&&qn(t.ssContent),ssFallback:t.ssFallback&&qn(t.ssFallback),el:t.el,anchor:t.anchor,ctx:t.ctx,ce:t.ce};return u&&s&&_s(h,u.clone(h)),h}function Yt(t=" ",e=0){return $t(eo,null,t,e)}function Mr(t="",e=!1){return e?(Tt(),jn(le,null,t)):$t(le,null,t)}function We(t){return t==null||typeof t=="boolean"?$t(le):dt(t)?$t(we,null,t.slice()):Ir(t)?Bn(t):$t(eo,null,String(t))}function Bn(t){return t.el===null&&t.patchFlag!==-1||t.memo?t:qn(t)}function xl(t,e){let n=0;const{shapeFlag:s}=t;if(e==null)e=null;else if(dt(e))n=16;else if(typeof e=="object")if(s&65){const r=e.default;r&&(r._c&&(r._d=!1),xl(t,r()),r._c&&(r._d=!0));return}else{n=32;const r=e._;!r&&!hh(e)?e._ctx=Ee:r===3&&Ee&&(Ee.slots._===1?e._=1:(e._=2,t.patchFlag|=1024))}else mt(e)?(e={default:e,_ctx:Ee},n=32):(e=String(e),s&64?(n=16,e=[Yt(e)]):n=8);t.children=e,t.shapeFlag|=n}function Vy(...t){const e={};for(let n=0;nse||Ee;let Vi,za;{const t=zi(),e=(n,s)=>{let r;return(r=t[n])||(r=t[n]=[]),r.push(s),o=>{r.length>1?r.forEach(a=>a(o)):r[0](o)}};Vi=e("__VUE_INSTANCE_SETTERS__",n=>se=n),za=e("__VUE_SSR_SETTERS__",n=>kr=n)}const bs=t=>{const e=se;return Vi(t),t.scope.on(),()=>{t.scope.off(),Vi(e)}},Ga=()=>{se&&se.scope.off(),Vi(null)};function Nh(t){return t.vnode.shapeFlag&4}let kr=!1;function Ky(t,e=!1,n=!1){e&&za(e);const{props:s,children:r}=t.vnode,o=Nh(t);dy(t,s,o,e),gy(t,r,n||e);const a=o?Wy(t,e):void 0;return e&&za(!1),a}function Wy(t,e){const n=t.type;t.accessCache=Object.create(null),t.proxy=new Proxy(t.ctx,ny);const{setup:s}=n;if(s){wn();const r=t.setupContext=s.length>1?zy(t):null,o=bs(t),a=Ur(s,t,0,[t.props,r]),l=pl(a);if(Tn(),o(),(l||t.sp)&&!Ar(t)&&th(t),l){if(a.then(Ga,Ga),e)return a.then(u=>{Ja(t,u)}).catch(u=>{jr(u,t,0)});t.asyncDep=a}else Ja(t,a)}else $h(t)}function Ja(t,e,n){mt(e)?t.type.__ssrInlineRender?t.ssrRender=e:t.render=e:Ht(e)&&(t.setupState=Vd(e)),$h(t)}function $h(t,e,n){const s=t.type;t.render||(t.render=s.render||on);{const r=bs(t);wn();try{ry(t)}finally{Tn(),r()}}}const Yy={get(t,e){return de(t,"get",""),t[e]}};function zy(t){const e=n=>{t.exposed=n||{}};return{attrs:new Proxy(t.attrs,Yy),slots:t.slots,emit:t.emit,expose:e}}function no(t){return t.exposed?t.exposeProxy||(t.exposeProxy=new Proxy(Vd(Al(t.exposed)),{get(e,n){if(n in e)return e[n];if(n in Sr)return Sr[n](t)},has(e,n){return n in e||n in Sr}})):t.proxy}function Gy(t,e=!0){return mt(t)?t.displayName||t.name:t.name||e&&t.__name}function Jy(t){return mt(t)&&"__vccOpts"in t}const zt=(t,e)=>Bv(t,e,kr);function Dl(t,e,n){const s=arguments.length;return s===2?Ht(e)&&!dt(e)?Ir(e)?$t(t,null,[e]):$t(t,e):$t(t,null,e):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&Ir(n)&&(n=[n]),$t(t,e,n))}const Qy="3.5.16";/** -* @vue/runtime-dom v3.5.16 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let Qa;const Mu=typeof window<"u"&&window.trustedTypes;if(Mu)try{Qa=Mu.createPolicy("vue",{createHTML:t=>t})}catch{}const xh=Qa?t=>Qa.createHTML(t):t=>t,Xy="http://www.w3.org/2000/svg",Zy="http://www.w3.org/1998/Math/MathML",gn=typeof document<"u"?document:null,ku=gn&&gn.createElement("template"),tE={insert:(t,e,n)=>{e.insertBefore(t,n||null)},remove:t=>{const e=t.parentNode;e&&e.removeChild(t)},createElement:(t,e,n,s)=>{const r=e==="svg"?gn.createElementNS(Xy,t):e==="mathml"?gn.createElementNS(Zy,t):n?gn.createElement(t,{is:n}):gn.createElement(t);return t==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:t=>gn.createTextNode(t),createComment:t=>gn.createComment(t),setText:(t,e)=>{t.nodeValue=e},setElementText:(t,e)=>{t.textContent=e},parentNode:t=>t.parentNode,nextSibling:t=>t.nextSibling,querySelector:t=>gn.querySelector(t),setScopeId(t,e){t.setAttribute(e,"")},insertStaticContent(t,e,n,s,r,o){const a=n?n.previousSibling:e.lastChild;if(r&&(r===o||r.nextSibling))for(;e.insertBefore(r.cloneNode(!0),n),!(r===o||!(r=r.nextSibling)););else{ku.innerHTML=xh(s==="svg"?`${t}`:s==="mathml"?`${t}`:t);const l=ku.content;if(s==="svg"||s==="mathml"){const u=l.firstChild;for(;u.firstChild;)l.appendChild(u.firstChild);l.removeChild(u)}e.insertBefore(l,n)}return[a?a.nextSibling:e.firstChild,n?n.previousSibling:e.lastChild]}},xn="transition",mr="animation",Js=Symbol("_vtc"),Ph={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Dh=ee({},Gd,Ph),eE=t=>(t.displayName="Transition",t.props=Dh,t),so=eE((t,{slots:e})=>Dl(Kv,Lh(t),e)),us=(t,e=[])=>{dt(t)?t.forEach(n=>n(...e)):t&&t(...e)},Bu=t=>t?dt(t)?t.some(e=>e.length>1):t.length>1:!1;function Lh(t){const e={};for(const P in t)P in Ph||(e[P]=t[P]);if(t.css===!1)return e;const{name:n="v",type:s,duration:r,enterFromClass:o=`${n}-enter-from`,enterActiveClass:a=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:u=o,appearActiveClass:f=a,appearToClass:h=l,leaveFromClass:p=`${n}-leave-from`,leaveActiveClass:g=`${n}-leave-active`,leaveToClass:_=`${n}-leave-to`}=t,E=nE(r),A=E&&E[0],H=E&&E[1],{onBeforeEnter:I,onEnter:F,onEnterCancelled:k,onLeave:U,onLeaveCancelled:q,onBeforeAppear:O=I,onAppear:R=F,onAppearCancelled:w=k}=e,S=(P,z,j,X)=>{P._enterCancelled=X,Ln(P,z?h:l),Ln(P,z?f:a),j&&j()},D=(P,z)=>{P._isLeaving=!1,Ln(P,p),Ln(P,_),Ln(P,g),z&&z()},M=P=>(z,j)=>{const X=P?R:F,Y=()=>S(z,P,j);us(X,[z,Y]),Fu(()=>{Ln(z,P?u:o),nn(z,P?h:l),Bu(X)||Hu(z,s,A,Y)})};return ee(e,{onBeforeEnter(P){us(I,[P]),nn(P,o),nn(P,a)},onBeforeAppear(P){us(O,[P]),nn(P,u),nn(P,f)},onEnter:M(!1),onAppear:M(!0),onLeave(P,z){P._isLeaving=!0;const j=()=>D(P,z);nn(P,p),P._enterCancelled?(nn(P,g),Xa()):(Xa(),nn(P,g)),Fu(()=>{P._isLeaving&&(Ln(P,p),nn(P,_),Bu(U)||Hu(P,s,H,j))}),us(U,[P,j])},onEnterCancelled(P){S(P,!1,void 0,!0),us(k,[P])},onAppearCancelled(P){S(P,!0,void 0,!0),us(w,[P])},onLeaveCancelled(P){D(P),us(q,[P])}})}function nE(t){if(t==null)return null;if(Ht(t))return[ra(t.enter),ra(t.leave)];{const e=ra(t);return[e,e]}}function ra(t){return _d(t)}function nn(t,e){e.split(/\s+/).forEach(n=>n&&t.classList.add(n)),(t[Js]||(t[Js]=new Set)).add(e)}function Ln(t,e){e.split(/\s+/).forEach(s=>s&&t.classList.remove(s));const n=t[Js];n&&(n.delete(e),n.size||(t[Js]=void 0))}function Fu(t){requestAnimationFrame(()=>{requestAnimationFrame(t)})}let sE=0;function Hu(t,e,n,s){const r=t._endId=++sE,o=()=>{r===t._endId&&s()};if(n!=null)return setTimeout(o,n);const{type:a,timeout:l,propCount:u}=Ih(t,e);if(!a)return s();const f=a+"end";let h=0;const p=()=>{t.removeEventListener(f,g),o()},g=_=>{_.target===t&&++h>=u&&p()};setTimeout(()=>{h(n[E]||"").split(", "),r=s(`${xn}Delay`),o=s(`${xn}Duration`),a=Vu(r,o),l=s(`${mr}Delay`),u=s(`${mr}Duration`),f=Vu(l,u);let h=null,p=0,g=0;e===xn?a>0&&(h=xn,p=a,g=o.length):e===mr?f>0&&(h=mr,p=f,g=u.length):(p=Math.max(a,f),h=p>0?a>f?xn:mr:null,g=h?h===xn?o.length:u.length:0);const _=h===xn&&/\b(transform|all)(,|$)/.test(s(`${xn}Property`).toString());return{type:h,timeout:p,propCount:g,hasTransform:_}}function Vu(t,e){for(;t.lengthUu(n)+Uu(t[s])))}function Uu(t){return t==="auto"?0:Number(t.slice(0,-1).replace(",","."))*1e3}function Xa(){return document.body.offsetHeight}function rE(t,e,n){const s=t[Js];s&&(e=(e?[e,...s]:[...s]).join(" ")),e==null?t.removeAttribute("class"):n?t.setAttribute("class",e):t.className=e}const ju=Symbol("_vod"),iE=Symbol("_vsh"),oE=Symbol(""),aE=/(^|;)\s*display\s*:/;function lE(t,e,n){const s=t.style,r=Jt(n);let o=!1;if(n&&!r){if(e)if(Jt(e))for(const a of e.split(";")){const l=a.slice(0,a.indexOf(":")).trim();n[l]==null&&Ci(s,l,"")}else for(const a in e)n[a]==null&&Ci(s,a,"");for(const a in n)a==="display"&&(o=!0),Ci(s,a,n[a])}else if(r){if(e!==n){const a=s[oE];a&&(n+=";"+a),s.cssText=n,o=aE.test(n)}}else e&&t.removeAttribute("style");ju in t&&(t[ju]=o?s.display:"",t[iE]&&(s.display="none"))}const qu=/\s*!important$/;function Ci(t,e,n){if(dt(n))n.forEach(s=>Ci(t,e,s));else if(n==null&&(n=""),e.startsWith("--"))t.setProperty(e,n);else{const s=cE(t,e);qu.test(n)?t.setProperty(ys(s),n.replace(qu,""),"important"):t[s]=n}}const Ku=["Webkit","Moz","ms"],ia={};function cE(t,e){const n=ia[e];if(n)return n;let s=Ue(e);if(s!=="filter"&&s in t)return ia[e]=s;s=Yi(s);for(let r=0;roa||(hE.then(()=>oa=0),oa=Date.now());function mE(t,e){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;ze(gE(s,n.value),e,5,[s])};return n.value=t,n.attached=pE(),n}function gE(t,e){if(dt(e)){const n=t.stopImmediatePropagation;return t.stopImmediatePropagation=()=>{n.call(t),t._stopped=!0},e.map(s=>r=>!r._stopped&&s&&s(r))}else return e}const Qu=t=>t.charCodeAt(0)===111&&t.charCodeAt(1)===110&&t.charCodeAt(2)>96&&t.charCodeAt(2)<123,_E=(t,e,n,s,r,o)=>{const a=r==="svg";e==="class"?rE(t,s,a):e==="style"?lE(t,n,s):Ki(e)?dl(e)||fE(t,e,n,s,o):(e[0]==="."?(e=e.slice(1),!0):e[0]==="^"?(e=e.slice(1),!1):bE(t,e,s,a))?(zu(t,e,s),!t.tagName.includes("-")&&(e==="value"||e==="checked"||e==="selected")&&Yu(t,e,s,a,o,e!=="value")):t._isVueCE&&(/[A-Z]/.test(e)||!Jt(s))?zu(t,Ue(e),s,o,e):(e==="true-value"?t._trueValue=s:e==="false-value"&&(t._falseValue=s),Yu(t,e,s,a))};function bE(t,e,n,s){if(s)return!!(e==="innerHTML"||e==="textContent"||e in t&&Qu(e)&&mt(n));if(e==="spellcheck"||e==="draggable"||e==="translate"||e==="autocorrect"||e==="form"||e==="list"&&t.tagName==="INPUT"||e==="type"&&t.tagName==="TEXTAREA")return!1;if(e==="width"||e==="height"){const r=t.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Qu(e)&&Jt(n)?!1:e in t}const Mh=new WeakMap,kh=new WeakMap,Ui=Symbol("_moveCb"),Xu=Symbol("_enterCb"),vE=t=>(delete t.props.mode,t),yE=vE({name:"TransitionGroup",props:ee({},Dh,{tag:String,moveClass:String}),setup(t,{slots:e}){const n=Pl(),s=zd();let r,o;return nh(()=>{if(!r.length)return;const a=t.moveClass||`${t.name||"v"}-move`;if(!SE(r[0].el,n.vnode.el,a)){r=[];return}r.forEach(wE),r.forEach(TE);const l=r.filter(AE);Xa(),l.forEach(u=>{const f=u.el,h=f.style;nn(f,a),h.transform=h.webkitTransform=h.transitionDuration="";const p=f[Ui]=g=>{g&&g.target!==f||(!g||/transform$/.test(g.propertyName))&&(f.removeEventListener("transitionend",p),f[Ui]=null,Ln(f,a))};f.addEventListener("transitionend",p)}),r=[]}),()=>{const a=Ot(t),l=Lh(a);let u=a.tag||we;if(r=[],o)for(let f=0;f{l.split(/\s+/).forEach(u=>u&&s.classList.remove(u))}),n.split(/\s+/).forEach(l=>l&&s.classList.add(l)),s.style.display="none";const o=e.nodeType===1?e:e.parentNode;o.appendChild(s);const{hasTransform:a}=Ih(s);return o.removeChild(s),a}const Kn=t=>{const e=t.props["onUpdate:modelValue"]||!1;return dt(e)?n=>Ti(e,n):e};function CE(t){t.target.composing=!0}function Zu(t){const e=t.target;e.composing&&(e.composing=!1,e.dispatchEvent(new Event("input")))}const Ve=Symbol("_assign"),En={created(t,{modifiers:{lazy:e,trim:n,number:s}},r){t[Ve]=Kn(r);const o=s||r.props&&r.props.type==="number";vn(t,e?"change":"input",a=>{if(a.target.composing)return;let l=t.value;n&&(l=l.trim()),o&&(l=Di(l)),t[Ve](l)}),n&&vn(t,"change",()=>{t.value=t.value.trim()}),e||(vn(t,"compositionstart",CE),vn(t,"compositionend",Zu),vn(t,"change",Zu))},mounted(t,{value:e}){t.value=e??""},beforeUpdate(t,{value:e,oldValue:n,modifiers:{lazy:s,trim:r,number:o}},a){if(t[Ve]=Kn(a),t.composing)return;const l=(o||t.type==="number")&&!/^0\d/.test(t.value)?Di(t.value):t.value,u=e??"";l!==u&&(document.activeElement===t&&t.type!=="range"&&(s&&e===n||r&&t.value.trim()===u)||(t.value=u))}},OE={deep:!0,created(t,e,n){t[Ve]=Kn(n),vn(t,"change",()=>{const s=t._modelValue,r=Qs(t),o=t.checked,a=t[Ve];if(dt(s)){const l=gl(s,r),u=l!==-1;if(o&&!u)a(s.concat(r));else if(!o&&u){const f=[...s];f.splice(l,1),a(f)}}else if(tr(s)){const l=new Set(s);o?l.add(r):l.delete(r),a(l)}else a(Bh(t,o))})},mounted:tf,beforeUpdate(t,e,n){t[Ve]=Kn(n),tf(t,e,n)}};function tf(t,{value:e,oldValue:n},s){t._modelValue=e;let r;if(dt(e))r=gl(e,s.props.value)>-1;else if(tr(e))r=e.has(s.props.value);else{if(e===n)return;r=gs(e,Bh(t,!0))}t.checked!==r&&(t.checked=r)}const RE={created(t,{value:e},n){t.checked=gs(e,n.props.value),t[Ve]=Kn(n),vn(t,"change",()=>{t[Ve](Qs(t))})},beforeUpdate(t,{value:e,oldValue:n},s){t[Ve]=Kn(s),e!==n&&(t.checked=gs(e,s.props.value))}},NE={deep:!0,created(t,{value:e,modifiers:{number:n}},s){const r=tr(e);vn(t,"change",()=>{const o=Array.prototype.filter.call(t.options,a=>a.selected).map(a=>n?Di(Qs(a)):Qs(a));t[Ve](t.multiple?r?new Set(o):o:o[0]),t._assigning=!0,Qi(()=>{t._assigning=!1})}),t[Ve]=Kn(s)},mounted(t,{value:e}){ef(t,e)},beforeUpdate(t,e,n){t[Ve]=Kn(n)},updated(t,{value:e}){t._assigning||ef(t,e)}};function ef(t,e){const n=t.multiple,s=dt(e);if(!(n&&!s&&!tr(e))){for(let r=0,o=t.options.length;rString(f)===String(l)):a.selected=gl(e,l)>-1}else a.selected=e.has(l);else if(gs(Qs(a),e)){t.selectedIndex!==r&&(t.selectedIndex=r);return}}!n&&t.selectedIndex!==-1&&(t.selectedIndex=-1)}}function Qs(t){return"_value"in t?t._value:t.value}function Bh(t,e){const n=e?"_trueValue":"_falseValue";return n in t?t[n]:e}const aa={created(t,e,n){Ei(t,e,n,null,"created")},mounted(t,e,n){Ei(t,e,n,null,"mounted")},beforeUpdate(t,e,n,s){Ei(t,e,n,s,"beforeUpdate")},updated(t,e,n,s){Ei(t,e,n,s,"updated")}};function $E(t,e){switch(t){case"SELECT":return NE;case"TEXTAREA":return En;default:switch(e){case"checkbox":return OE;case"radio":return RE;default:return En}}}function Ei(t,e,n,s,r){const a=$E(t.tagName,n.props&&n.props.type)[r];a&&a(t,e,n,s)}const xE=ee({patchProp:_E},tE);let nf;function PE(){return nf||(nf=by(xE))}const DE=(...t)=>{const e=PE().createApp(...t),{mount:n}=e;return e.mount=s=>{const r=IE(s);if(!r)return;const o=e._component;!mt(o)&&!o.render&&!o.template&&(o.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const a=n(r,!1,LE(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),a},e};function LE(t){if(t instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&t instanceof MathMLElement)return"mathml"}function IE(t){return Jt(t)?document.querySelector(t):t}/*! - * pinia v3.0.2 - * (c) 2025 Eduardo San Martin Morote - * @license MIT - */let Fh;const ro=t=>Fh=t,Hh=Symbol();function Za(t){return t&&typeof t=="object"&&Object.prototype.toString.call(t)==="[object Object]"&&typeof t.toJSON!="function"}var Or;(function(t){t.direct="direct",t.patchObject="patch object",t.patchFunction="patch function"})(Or||(Or={}));function ME(){const t=wd(!0),e=t.run(()=>Ae({}));let n=[],s=[];const r=Al({install(o){ro(r),r._a=o,o.provide(Hh,r),o.config.globalProperties.$pinia=r,s.forEach(a=>n.push(a)),s=[]},use(o){return this._a?n.push(o):s.push(o),this},_p:n,_a:null,_e:t,_s:new Map,state:e});return r}const Vh=()=>{};function sf(t,e,n,s=Vh){t.push(e);const r=()=>{const o=t.indexOf(e);o>-1&&(t.splice(o,1),s())};return!n&&Td()&&fv(r),r}function Hs(t,...e){t.slice().forEach(n=>{n(...e)})}const kE=t=>t(),rf=Symbol(),la=Symbol();function tl(t,e){t instanceof Map&&e instanceof Map?e.forEach((n,s)=>t.set(s,n)):t instanceof Set&&e instanceof Set&&e.forEach(t.add,t);for(const n in e){if(!e.hasOwnProperty(n))continue;const s=e[n],r=t[n];Za(r)&&Za(s)&&t.hasOwnProperty(n)&&!Zt(s)&&!Vn(s)?t[n]=tl(r,s):t[n]=s}return t}const BE=Symbol();function FE(t){return!Za(t)||!Object.prototype.hasOwnProperty.call(t,BE)}const{assign:In}=Object;function HE(t){return!!(Zt(t)&&t.effect)}function VE(t,e,n,s){const{state:r,actions:o,getters:a}=e,l=n.state.value[t];let u;function f(){l||(n.state.value[t]=r?r():{});const h=Lv(n.state.value[t]);return In(h,o,Object.keys(a||{}).reduce((p,g)=>(p[g]=Al(zt(()=>{ro(n);const _=n._s.get(t);return a[g].call(_,_)})),p),{}))}return u=Uh(t,f,e,n,s,!0),u}function Uh(t,e,n={},s,r,o){let a;const l=In({actions:{}},n),u={deep:!0};let f,h,p=[],g=[],_;const E=s.state.value[t];!o&&!E&&(s.state.value[t]={}),Ae({});let A;function H(w){let S;f=h=!1,typeof w=="function"?(w(s.state.value[t]),S={type:Or.patchFunction,storeId:t,events:_}):(tl(s.state.value[t],w),S={type:Or.patchObject,payload:w,storeId:t,events:_});const D=A=Symbol();Qi().then(()=>{A===D&&(f=!0)}),h=!0,Hs(p,S,s.state.value[t])}const I=o?function(){const{state:S}=n,D=S?S():{};this.$patch(M=>{In(M,D)})}:Vh;function F(){a.stop(),p=[],g=[],s._s.delete(t)}const k=(w,S="")=>{if(rf in w)return w[la]=S,w;const D=function(){ro(s);const M=Array.from(arguments),P=[],z=[];function j(Q){P.push(Q)}function X(Q){z.push(Q)}Hs(g,{args:M,name:D[la],store:q,after:j,onError:X});let Y;try{Y=w.apply(this&&this.$id===t?this:q,M)}catch(Q){throw Hs(z,Q),Q}return Y instanceof Promise?Y.then(Q=>(Hs(P,Q),Q)).catch(Q=>(Hs(z,Q),Promise.reject(Q))):(Hs(P,Y),Y)};return D[rf]=!0,D[la]=S,D},U={_p:s,$id:t,$onAction:sf.bind(null,g),$patch:H,$reset:I,$subscribe(w,S={}){const D=sf(p,w,S.detached,()=>M()),M=a.run(()=>Ys(()=>s.state.value[t],P=>{(S.flush==="sync"?h:f)&&w({storeId:t,type:Or.direct,events:_},P)},In({},u,S)));return D},$dispose:F},q=An(U);s._s.set(t,q);const R=(s._a&&s._a.runWithContext||kE)(()=>s._e.run(()=>(a=wd()).run(()=>e({action:k}))));for(const w in R){const S=R[w];if(Zt(S)&&!HE(S)||Vn(S))o||(E&&FE(S)&&(Zt(S)?S.value=E[w]:tl(S,E[w])),s.state.value[t][w]=S);else if(typeof S=="function"){const D=k(S,w);R[w]=D,l.actions[w]=S}}return In(q,R),In(Ot(q),R),Object.defineProperty(q,"$state",{get:()=>s.state.value[t],set:w=>{H(S=>{In(S,w)})}}),s._p.forEach(w=>{In(q,a.run(()=>w({store:q,app:s._a,pinia:s,options:l})))}),E&&o&&n.hydrate&&n.hydrate(q.$state,E),f=!0,h=!0,q}/*! #__NO_SIDE_EFFECTS__ */function UE(t,e,n){let s;const r=typeof e=="function";s=r?n:e;function o(a,l){const u=fy();return a=a||(u?He(Hh,null):null),a&&ro(a),a=Fh,a._s.has(t)||(r?Uh(t,e,s,a):VE(t,s,a)),a._s.get(t)}return o.$id=t,o}const oe=[];for(let t=0;t<256;++t)oe.push((t+256).toString(16).slice(1));function jE(t,e=0){return(oe[t[e+0]]+oe[t[e+1]]+oe[t[e+2]]+oe[t[e+3]]+"-"+oe[t[e+4]]+oe[t[e+5]]+"-"+oe[t[e+6]]+oe[t[e+7]]+"-"+oe[t[e+8]]+oe[t[e+9]]+"-"+oe[t[e+10]]+oe[t[e+11]]+oe[t[e+12]]+oe[t[e+13]]+oe[t[e+14]]+oe[t[e+15]]).toLowerCase()}let ca;const qE=new Uint8Array(16);function KE(){if(!ca){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");ca=crypto.getRandomValues.bind(crypto)}return ca(qE)}const WE=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),of={randomUUID:WE};function jh(t,e,n){var r;if(of.randomUUID&&!t)return of.randomUUID();t=t||{};const s=t.random??((r=t.rng)==null?void 0:r.call(t))??KE();if(s.length<16)throw new Error("Random bytes length must be >= 16");return s[6]=s[6]&15|64,s[8]=s[8]&63|128,jE(s)}function Ll(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Oi={exports:{}},YE=Oi.exports,af;function zE(){return af||(af=1,function(t,e){(function(n,s){t.exports=s()})(YE,function(){var n=1e3,s=6e4,r=36e5,o="millisecond",a="second",l="minute",u="hour",f="day",h="week",p="month",g="quarter",_="year",E="date",A="Invalid Date",H=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,I=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,F={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(j){var X=["th","st","nd","rd"],Y=j%100;return"["+j+(X[(Y-20)%10]||X[Y]||X[0])+"]"}},k=function(j,X,Y){var Q=String(j);return!Q||Q.length>=X?j:""+Array(X+1-Q.length).join(Y)+j},U={s:k,z:function(j){var X=-j.utcOffset(),Y=Math.abs(X),Q=Math.floor(Y/60),J=Y%60;return(X<=0?"+":"-")+k(Q,2,"0")+":"+k(J,2,"0")},m:function j(X,Y){if(X.date()1)return j(ut[0])}else{var gt=X.name;O[gt]=X,J=gt}return!Q&&J&&(q=J),J||!Q&&q},D=function(j,X){if(w(j))return j.clone();var Y=typeof X=="object"?X:{};return Y.date=j,Y.args=arguments,new P(Y)},M=U;M.l=S,M.i=w,M.w=function(j,X){return D(j,{locale:X.$L,utc:X.$u,x:X.$x,$offset:X.$offset})};var P=function(){function j(Y){this.$L=S(Y.locale,null,!0),this.parse(Y),this.$x=this.$x||Y.x||{},this[R]=!0}var X=j.prototype;return X.parse=function(Y){this.$d=function(Q){var J=Q.date,ct=Q.utc;if(J===null)return new Date(NaN);if(M.u(J))return new Date;if(J instanceof Date)return new Date(J);if(typeof J=="string"&&!/Z$/i.test(J)){var ut=J.match(H);if(ut){var gt=ut[2]-1||0,bt=(ut[7]||"0").substring(0,3);return ct?new Date(Date.UTC(ut[1],gt,ut[3]||1,ut[4]||0,ut[5]||0,ut[6]||0,bt)):new Date(ut[1],gt,ut[3]||1,ut[4]||0,ut[5]||0,ut[6]||0,bt)}}return new Date(J)}(Y),this.init()},X.init=function(){var Y=this.$d;this.$y=Y.getFullYear(),this.$M=Y.getMonth(),this.$D=Y.getDate(),this.$W=Y.getDay(),this.$H=Y.getHours(),this.$m=Y.getMinutes(),this.$s=Y.getSeconds(),this.$ms=Y.getMilliseconds()},X.$utils=function(){return M},X.isValid=function(){return this.$d.toString()!==A},X.isSame=function(Y,Q){var J=D(Y);return this.startOf(Q)<=J&&J<=this.endOf(Q)},X.isAfter=function(Y,Q){return D(Y)e=>{const n=JE.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Je=t=>(t=t.toLowerCase(),e=>oo(e)===t),ao=t=>e=>typeof e===t,{isArray:er}=Array,Br=ao("undefined");function QE(t){return t!==null&&!Br(t)&&t.constructor!==null&&!Br(t.constructor)&&Se(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}const Wh=Je("ArrayBuffer");function XE(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&Wh(t.buffer),e}const ZE=ao("string"),Se=ao("function"),Yh=ao("number"),lo=t=>t!==null&&typeof t=="object",tw=t=>t===!0||t===!1,Ri=t=>{if(oo(t)!=="object")return!1;const e=Il(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Kh in t)&&!(io in t)},ew=Je("Date"),nw=Je("File"),sw=Je("Blob"),rw=Je("FileList"),iw=t=>lo(t)&&Se(t.pipe),ow=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||Se(t.append)&&((e=oo(t))==="formdata"||e==="object"&&Se(t.toString)&&t.toString()==="[object FormData]"))},aw=Je("URLSearchParams"),[lw,cw,uw,fw]=["ReadableStream","Request","Response","Headers"].map(Je),dw=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Kr(t,e,{allOwnKeys:n=!1}={}){if(t===null||typeof t>"u")return;let s,r;if(typeof t!="object"&&(t=[t]),er(t))for(s=0,r=t.length;s0;)if(r=n[s],e===r.toLowerCase())return r;return null}const ds=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Gh=t=>!Br(t)&&t!==ds;function el(){const{caseless:t}=Gh(this)&&this||{},e={},n=(s,r)=>{const o=t&&zh(e,r)||r;Ri(e[o])&&Ri(s)?e[o]=el(e[o],s):Ri(s)?e[o]=el({},s):er(s)?e[o]=s.slice():e[o]=s};for(let s=0,r=arguments.length;s(Kr(e,(r,o)=>{n&&Se(r)?t[o]=qh(r,n):t[o]=r},{allOwnKeys:s}),t),pw=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),mw=(t,e,n,s)=>{t.prototype=Object.create(e.prototype,s),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),n&&Object.assign(t.prototype,n)},gw=(t,e,n,s)=>{let r,o,a;const l={};if(e=e||{},t==null)return e;do{for(r=Object.getOwnPropertyNames(t),o=r.length;o-- >0;)a=r[o],(!s||s(a,t,e))&&!l[a]&&(e[a]=t[a],l[a]=!0);t=n!==!1&&Il(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e},_w=(t,e,n)=>{t=String(t),(n===void 0||n>t.length)&&(n=t.length),n-=e.length;const s=t.indexOf(e,n);return s!==-1&&s===n},bw=t=>{if(!t)return null;if(er(t))return t;let e=t.length;if(!Yh(e))return null;const n=new Array(e);for(;e-- >0;)n[e]=t[e];return n},vw=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&Il(Uint8Array)),yw=(t,e)=>{const s=(t&&t[io]).call(t);let r;for(;(r=s.next())&&!r.done;){const o=r.value;e.call(t,o[0],o[1])}},Ew=(t,e)=>{let n;const s=[];for(;(n=t.exec(e))!==null;)s.push(n);return s},ww=Je("HTMLFormElement"),Tw=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,s,r){return s.toUpperCase()+r}),lf=(({hasOwnProperty:t})=>(e,n)=>t.call(e,n))(Object.prototype),Aw=Je("RegExp"),Jh=(t,e)=>{const n=Object.getOwnPropertyDescriptors(t),s={};Kr(n,(r,o)=>{let a;(a=e(r,o,t))!==!1&&(s[o]=a||r)}),Object.defineProperties(t,s)},Sw=t=>{Jh(t,(e,n)=>{if(Se(t)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const s=t[n];if(Se(s)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},Cw=(t,e)=>{const n={},s=r=>{r.forEach(o=>{n[o]=!0})};return er(t)?s(t):s(String(t).split(e)),n},Ow=()=>{},Rw=(t,e)=>t!=null&&Number.isFinite(t=+t)?t:e;function Nw(t){return!!(t&&Se(t.append)&&t[Kh]==="FormData"&&t[io])}const $w=t=>{const e=new Array(10),n=(s,r)=>{if(lo(s)){if(e.indexOf(s)>=0)return;if(!("toJSON"in s)){e[r]=s;const o=er(s)?[]:{};return Kr(s,(a,l)=>{const u=n(a,r+1);!Br(u)&&(o[l]=u)}),e[r]=void 0,o}}return s};return n(t,0)},xw=Je("AsyncFunction"),Pw=t=>t&&(lo(t)||Se(t))&&Se(t.then)&&Se(t.catch),Qh=((t,e)=>t?setImmediate:e?((n,s)=>(ds.addEventListener("message",({source:r,data:o})=>{r===ds&&o===n&&s.length&&s.shift()()},!1),r=>{s.push(r),ds.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Se(ds.postMessage)),Dw=typeof queueMicrotask<"u"?queueMicrotask.bind(ds):typeof process<"u"&&process.nextTick||Qh,Lw=t=>t!=null&&Se(t[io]),B={isArray:er,isArrayBuffer:Wh,isBuffer:QE,isFormData:ow,isArrayBufferView:XE,isString:ZE,isNumber:Yh,isBoolean:tw,isObject:lo,isPlainObject:Ri,isReadableStream:lw,isRequest:cw,isResponse:uw,isHeaders:fw,isUndefined:Br,isDate:ew,isFile:nw,isBlob:sw,isRegExp:Aw,isFunction:Se,isStream:iw,isURLSearchParams:aw,isTypedArray:vw,isFileList:rw,forEach:Kr,merge:el,extend:hw,trim:dw,stripBOM:pw,inherits:mw,toFlatObject:gw,kindOf:oo,kindOfTest:Je,endsWith:_w,toArray:bw,forEachEntry:yw,matchAll:Ew,isHTMLForm:ww,hasOwnProperty:lf,hasOwnProp:lf,reduceDescriptors:Jh,freezeMethods:Sw,toObjectSet:Cw,toCamelCase:Tw,noop:Ow,toFiniteNumber:Rw,findKey:zh,global:ds,isContextDefined:Gh,isSpecCompliantForm:Nw,toJSONObject:$w,isAsyncFn:xw,isThenable:Pw,setImmediate:Qh,asap:Dw,isIterable:Lw};function vt(t,e,n,s,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),n&&(this.config=n),s&&(this.request=s),r&&(this.response=r,this.status=r.status?r.status:null)}B.inherits(vt,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:B.toJSONObject(this.config),code:this.code,status:this.status}}});const Xh=vt.prototype,Zh={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{Zh[t]={value:t}});Object.defineProperties(vt,Zh);Object.defineProperty(Xh,"isAxiosError",{value:!0});vt.from=(t,e,n,s,r,o)=>{const a=Object.create(Xh);return B.toFlatObject(t,a,function(u){return u!==Error.prototype},l=>l!=="isAxiosError"),vt.call(a,t.message,e,n,s,r),a.cause=t,a.name=t.name,o&&Object.assign(a,o),a};const Iw=null;function nl(t){return B.isPlainObject(t)||B.isArray(t)}function tp(t){return B.endsWith(t,"[]")?t.slice(0,-2):t}function cf(t,e,n){return t?t.concat(e).map(function(r,o){return r=tp(r),!n&&o?"["+r+"]":r}).join(n?".":""):e}function Mw(t){return B.isArray(t)&&!t.some(nl)}const kw=B.toFlatObject(B,{},null,function(e){return/^is[A-Z]/.test(e)});function co(t,e,n){if(!B.isObject(t))throw new TypeError("target must be an object");e=e||new FormData,n=B.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(A,H){return!B.isUndefined(H[A])});const s=n.metaTokens,r=n.visitor||h,o=n.dots,a=n.indexes,u=(n.Blob||typeof Blob<"u"&&Blob)&&B.isSpecCompliantForm(e);if(!B.isFunction(r))throw new TypeError("visitor must be a function");function f(E){if(E===null)return"";if(B.isDate(E))return E.toISOString();if(!u&&B.isBlob(E))throw new vt("Blob is not supported. Use a Buffer instead.");return B.isArrayBuffer(E)||B.isTypedArray(E)?u&&typeof Blob=="function"?new Blob([E]):Buffer.from(E):E}function h(E,A,H){let I=E;if(E&&!H&&typeof E=="object"){if(B.endsWith(A,"{}"))A=s?A:A.slice(0,-2),E=JSON.stringify(E);else if(B.isArray(E)&&Mw(E)||(B.isFileList(E)||B.endsWith(A,"[]"))&&(I=B.toArray(E)))return A=tp(A),I.forEach(function(k,U){!(B.isUndefined(k)||k===null)&&e.append(a===!0?cf([A],U,o):a===null?A:A+"[]",f(k))}),!1}return nl(E)?!0:(e.append(cf(H,A,o),f(E)),!1)}const p=[],g=Object.assign(kw,{defaultVisitor:h,convertValue:f,isVisitable:nl});function _(E,A){if(!B.isUndefined(E)){if(p.indexOf(E)!==-1)throw Error("Circular reference detected in "+A.join("."));p.push(E),B.forEach(E,function(I,F){(!(B.isUndefined(I)||I===null)&&r.call(e,I,B.isString(F)?F.trim():F,A,g))===!0&&_(I,A?A.concat(F):[F])}),p.pop()}}if(!B.isObject(t))throw new TypeError("data must be an object");return _(t),e}function uf(t){const e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(s){return e[s]})}function Ml(t,e){this._pairs=[],t&&co(t,this,e)}const ep=Ml.prototype;ep.append=function(e,n){this._pairs.push([e,n])};ep.toString=function(e){const n=e?function(s){return e.call(this,s,uf)}:uf;return this._pairs.map(function(r){return n(r[0])+"="+n(r[1])},"").join("&")};function Bw(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function np(t,e,n){if(!e)return t;const s=n&&n.encode||Bw;B.isFunction(n)&&(n={serialize:n});const r=n&&n.serialize;let o;if(r?o=r(e,n):o=B.isURLSearchParams(e)?e.toString():new Ml(e,n).toString(s),o){const a=t.indexOf("#");a!==-1&&(t=t.slice(0,a)),t+=(t.indexOf("?")===-1?"?":"&")+o}return t}class ff{constructor(){this.handlers=[]}use(e,n,s){return this.handlers.push({fulfilled:e,rejected:n,synchronous:s?s.synchronous:!1,runWhen:s?s.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){B.forEach(this.handlers,function(s){s!==null&&e(s)})}}const sp={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Fw=typeof URLSearchParams<"u"?URLSearchParams:Ml,Hw=typeof FormData<"u"?FormData:null,Vw=typeof Blob<"u"?Blob:null,Uw={isBrowser:!0,classes:{URLSearchParams:Fw,FormData:Hw,Blob:Vw},protocols:["http","https","file","blob","url","data"]},kl=typeof window<"u"&&typeof document<"u",sl=typeof navigator=="object"&&navigator||void 0,jw=kl&&(!sl||["ReactNative","NativeScript","NS"].indexOf(sl.product)<0),qw=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Kw=kl&&window.location.href||"http://localhost",Ww=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:kl,hasStandardBrowserEnv:jw,hasStandardBrowserWebWorkerEnv:qw,navigator:sl,origin:Kw},Symbol.toStringTag,{value:"Module"})),he={...Ww,...Uw};function Yw(t,e){return co(t,new he.classes.URLSearchParams,Object.assign({visitor:function(n,s,r,o){return he.isNode&&B.isBuffer(n)?(this.append(s,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},e))}function zw(t){return B.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function Gw(t){const e={},n=Object.keys(t);let s;const r=n.length;let o;for(s=0;s=n.length;return a=!a&&B.isArray(r)?r.length:a,u?(B.hasOwnProp(r,a)?r[a]=[r[a],s]:r[a]=s,!l):((!r[a]||!B.isObject(r[a]))&&(r[a]=[]),e(n,s,r[a],o)&&B.isArray(r[a])&&(r[a]=Gw(r[a])),!l)}if(B.isFormData(t)&&B.isFunction(t.entries)){const n={};return B.forEachEntry(t,(s,r)=>{e(zw(s),r,n,0)}),n}return null}function Jw(t,e,n){if(B.isString(t))try{return(e||JSON.parse)(t),B.trim(t)}catch(s){if(s.name!=="SyntaxError")throw s}return(n||JSON.stringify)(t)}const Wr={transitional:sp,adapter:["xhr","http","fetch"],transformRequest:[function(e,n){const s=n.getContentType()||"",r=s.indexOf("application/json")>-1,o=B.isObject(e);if(o&&B.isHTMLForm(e)&&(e=new FormData(e)),B.isFormData(e))return r?JSON.stringify(rp(e)):e;if(B.isArrayBuffer(e)||B.isBuffer(e)||B.isStream(e)||B.isFile(e)||B.isBlob(e)||B.isReadableStream(e))return e;if(B.isArrayBufferView(e))return e.buffer;if(B.isURLSearchParams(e))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let l;if(o){if(s.indexOf("application/x-www-form-urlencoded")>-1)return Yw(e,this.formSerializer).toString();if((l=B.isFileList(e))||s.indexOf("multipart/form-data")>-1){const u=this.env&&this.env.FormData;return co(l?{"files[]":e}:e,u&&new u,this.formSerializer)}}return o||r?(n.setContentType("application/json",!1),Jw(e)):e}],transformResponse:[function(e){const n=this.transitional||Wr.transitional,s=n&&n.forcedJSONParsing,r=this.responseType==="json";if(B.isResponse(e)||B.isReadableStream(e))return e;if(e&&B.isString(e)&&(s&&!this.responseType||r)){const a=!(n&&n.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(l){if(a)throw l.name==="SyntaxError"?vt.from(l,vt.ERR_BAD_RESPONSE,this,null,this.response):l}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:he.classes.FormData,Blob:he.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};B.forEach(["delete","get","head","post","put","patch"],t=>{Wr.headers[t]={}});const Qw=B.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Xw=t=>{const e={};let n,s,r;return t&&t.split(` -`).forEach(function(a){r=a.indexOf(":"),n=a.substring(0,r).trim().toLowerCase(),s=a.substring(r+1).trim(),!(!n||e[n]&&Qw[n])&&(n==="set-cookie"?e[n]?e[n].push(s):e[n]=[s]:e[n]=e[n]?e[n]+", "+s:s)}),e},df=Symbol("internals");function gr(t){return t&&String(t).trim().toLowerCase()}function Ni(t){return t===!1||t==null?t:B.isArray(t)?t.map(Ni):String(t)}function Zw(t){const e=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let s;for(;s=n.exec(t);)e[s[1]]=s[2];return e}const t0=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function ua(t,e,n,s,r){if(B.isFunction(s))return s.call(this,e,n);if(r&&(e=n),!!B.isString(e)){if(B.isString(s))return e.indexOf(s)!==-1;if(B.isRegExp(s))return s.test(e)}}function e0(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,n,s)=>n.toUpperCase()+s)}function n0(t,e){const n=B.toCamelCase(" "+e);["get","set","has"].forEach(s=>{Object.defineProperty(t,s+n,{value:function(r,o,a){return this[s].call(this,e,r,o,a)},configurable:!0})})}let Ce=class{constructor(e){e&&this.set(e)}set(e,n,s){const r=this;function o(l,u,f){const h=gr(u);if(!h)throw new Error("header name must be a non-empty string");const p=B.findKey(r,h);(!p||r[p]===void 0||f===!0||f===void 0&&r[p]!==!1)&&(r[p||u]=Ni(l))}const a=(l,u)=>B.forEach(l,(f,h)=>o(f,h,u));if(B.isPlainObject(e)||e instanceof this.constructor)a(e,n);else if(B.isString(e)&&(e=e.trim())&&!t0(e))a(Xw(e),n);else if(B.isObject(e)&&B.isIterable(e)){let l={},u,f;for(const h of e){if(!B.isArray(h))throw TypeError("Object iterator must return a key-value pair");l[f=h[0]]=(u=l[f])?B.isArray(u)?[...u,h[1]]:[u,h[1]]:h[1]}a(l,n)}else e!=null&&o(n,e,s);return this}get(e,n){if(e=gr(e),e){const s=B.findKey(this,e);if(s){const r=this[s];if(!n)return r;if(n===!0)return Zw(r);if(B.isFunction(n))return n.call(this,r,s);if(B.isRegExp(n))return n.exec(r);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,n){if(e=gr(e),e){const s=B.findKey(this,e);return!!(s&&this[s]!==void 0&&(!n||ua(this,this[s],s,n)))}return!1}delete(e,n){const s=this;let r=!1;function o(a){if(a=gr(a),a){const l=B.findKey(s,a);l&&(!n||ua(s,s[l],l,n))&&(delete s[l],r=!0)}}return B.isArray(e)?e.forEach(o):o(e),r}clear(e){const n=Object.keys(this);let s=n.length,r=!1;for(;s--;){const o=n[s];(!e||ua(this,this[o],o,e,!0))&&(delete this[o],r=!0)}return r}normalize(e){const n=this,s={};return B.forEach(this,(r,o)=>{const a=B.findKey(s,o);if(a){n[a]=Ni(r),delete n[o];return}const l=e?e0(o):String(o).trim();l!==o&&delete n[o],n[l]=Ni(r),s[l]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const n=Object.create(null);return B.forEach(this,(s,r)=>{s!=null&&s!==!1&&(n[r]=e&&B.isArray(s)?s.join(", "):s)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,n])=>e+": "+n).join(` -`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...n){const s=new this(e);return n.forEach(r=>s.set(r)),s}static accessor(e){const s=(this[df]=this[df]={accessors:{}}).accessors,r=this.prototype;function o(a){const l=gr(a);s[l]||(n0(r,a),s[l]=!0)}return B.isArray(e)?e.forEach(o):o(e),this}};Ce.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);B.reduceDescriptors(Ce.prototype,({value:t},e)=>{let n=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(s){this[n]=s}}});B.freezeMethods(Ce);function fa(t,e){const n=this||Wr,s=e||n,r=Ce.from(s.headers);let o=s.data;return B.forEach(t,function(l){o=l.call(n,o,r.normalize(),e?e.status:void 0)}),r.normalize(),o}function ip(t){return!!(t&&t.__CANCEL__)}function nr(t,e,n){vt.call(this,t??"canceled",vt.ERR_CANCELED,e,n),this.name="CanceledError"}B.inherits(nr,vt,{__CANCEL__:!0});function op(t,e,n){const s=n.config.validateStatus;!n.status||!s||s(n.status)?t(n):e(new vt("Request failed with status code "+n.status,[vt.ERR_BAD_REQUEST,vt.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function s0(t){const e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}function r0(t,e){t=t||10;const n=new Array(t),s=new Array(t);let r=0,o=0,a;return e=e!==void 0?e:1e3,function(u){const f=Date.now(),h=s[o];a||(a=f),n[r]=u,s[r]=f;let p=o,g=0;for(;p!==r;)g+=n[p++],p=p%t;if(r=(r+1)%t,r===o&&(o=(o+1)%t),f-a{n=h,r=null,o&&(clearTimeout(o),o=null),t.apply(null,f)};return[(...f)=>{const h=Date.now(),p=h-n;p>=s?a(f,h):(r=f,o||(o=setTimeout(()=>{o=null,a(r)},s-p)))},()=>r&&a(r)]}const ji=(t,e,n=3)=>{let s=0;const r=r0(50,250);return i0(o=>{const a=o.loaded,l=o.lengthComputable?o.total:void 0,u=a-s,f=r(u),h=a<=l;s=a;const p={loaded:a,total:l,progress:l?a/l:void 0,bytes:u,rate:f||void 0,estimated:f&&l&&h?(l-a)/f:void 0,event:o,lengthComputable:l!=null,[e?"download":"upload"]:!0};t(p)},n)},hf=(t,e)=>{const n=t!=null;return[s=>e[0]({lengthComputable:n,total:t,loaded:s}),e[1]]},pf=t=>(...e)=>B.asap(()=>t(...e)),o0=he.hasStandardBrowserEnv?((t,e)=>n=>(n=new URL(n,he.origin),t.protocol===n.protocol&&t.host===n.host&&(e||t.port===n.port)))(new URL(he.origin),he.navigator&&/(msie|trident)/i.test(he.navigator.userAgent)):()=>!0,a0=he.hasStandardBrowserEnv?{write(t,e,n,s,r,o){const a=[t+"="+encodeURIComponent(e)];B.isNumber(n)&&a.push("expires="+new Date(n).toGMTString()),B.isString(s)&&a.push("path="+s),B.isString(r)&&a.push("domain="+r),o===!0&&a.push("secure"),document.cookie=a.join("; ")},read(t){const e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function l0(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function c0(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function ap(t,e,n){let s=!l0(e);return t&&(s||n==!1)?c0(t,e):e}const mf=t=>t instanceof Ce?{...t}:t;function vs(t,e){e=e||{};const n={};function s(f,h,p,g){return B.isPlainObject(f)&&B.isPlainObject(h)?B.merge.call({caseless:g},f,h):B.isPlainObject(h)?B.merge({},h):B.isArray(h)?h.slice():h}function r(f,h,p,g){if(B.isUndefined(h)){if(!B.isUndefined(f))return s(void 0,f,p,g)}else return s(f,h,p,g)}function o(f,h){if(!B.isUndefined(h))return s(void 0,h)}function a(f,h){if(B.isUndefined(h)){if(!B.isUndefined(f))return s(void 0,f)}else return s(void 0,h)}function l(f,h,p){if(p in e)return s(f,h);if(p in t)return s(void 0,f)}const u={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:l,headers:(f,h,p)=>r(mf(f),mf(h),p,!0)};return B.forEach(Object.keys(Object.assign({},t,e)),function(h){const p=u[h]||r,g=p(t[h],e[h],h);B.isUndefined(g)&&p!==l||(n[h]=g)}),n}const lp=t=>{const e=vs({},t);let{data:n,withXSRFToken:s,xsrfHeaderName:r,xsrfCookieName:o,headers:a,auth:l}=e;e.headers=a=Ce.from(a),e.url=np(ap(e.baseURL,e.url,e.allowAbsoluteUrls),t.params,t.paramsSerializer),l&&a.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):"")));let u;if(B.isFormData(n)){if(he.hasStandardBrowserEnv||he.hasStandardBrowserWebWorkerEnv)a.setContentType(void 0);else if((u=a.getContentType())!==!1){const[f,...h]=u?u.split(";").map(p=>p.trim()).filter(Boolean):[];a.setContentType([f||"multipart/form-data",...h].join("; "))}}if(he.hasStandardBrowserEnv&&(s&&B.isFunction(s)&&(s=s(e)),s||s!==!1&&o0(e.url))){const f=r&&o&&a0.read(o);f&&a.set(r,f)}return e},u0=typeof XMLHttpRequest<"u",f0=u0&&function(t){return new Promise(function(n,s){const r=lp(t);let o=r.data;const a=Ce.from(r.headers).normalize();let{responseType:l,onUploadProgress:u,onDownloadProgress:f}=r,h,p,g,_,E;function A(){_&&_(),E&&E(),r.cancelToken&&r.cancelToken.unsubscribe(h),r.signal&&r.signal.removeEventListener("abort",h)}let H=new XMLHttpRequest;H.open(r.method.toUpperCase(),r.url,!0),H.timeout=r.timeout;function I(){if(!H)return;const k=Ce.from("getAllResponseHeaders"in H&&H.getAllResponseHeaders()),q={data:!l||l==="text"||l==="json"?H.responseText:H.response,status:H.status,statusText:H.statusText,headers:k,config:t,request:H};op(function(R){n(R),A()},function(R){s(R),A()},q),H=null}"onloadend"in H?H.onloadend=I:H.onreadystatechange=function(){!H||H.readyState!==4||H.status===0&&!(H.responseURL&&H.responseURL.indexOf("file:")===0)||setTimeout(I)},H.onabort=function(){H&&(s(new vt("Request aborted",vt.ECONNABORTED,t,H)),H=null)},H.onerror=function(){s(new vt("Network Error",vt.ERR_NETWORK,t,H)),H=null},H.ontimeout=function(){let U=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const q=r.transitional||sp;r.timeoutErrorMessage&&(U=r.timeoutErrorMessage),s(new vt(U,q.clarifyTimeoutError?vt.ETIMEDOUT:vt.ECONNABORTED,t,H)),H=null},o===void 0&&a.setContentType(null),"setRequestHeader"in H&&B.forEach(a.toJSON(),function(U,q){H.setRequestHeader(q,U)}),B.isUndefined(r.withCredentials)||(H.withCredentials=!!r.withCredentials),l&&l!=="json"&&(H.responseType=r.responseType),f&&([g,E]=ji(f,!0),H.addEventListener("progress",g)),u&&H.upload&&([p,_]=ji(u),H.upload.addEventListener("progress",p),H.upload.addEventListener("loadend",_)),(r.cancelToken||r.signal)&&(h=k=>{H&&(s(!k||k.type?new nr(null,t,H):k),H.abort(),H=null)},r.cancelToken&&r.cancelToken.subscribe(h),r.signal&&(r.signal.aborted?h():r.signal.addEventListener("abort",h)));const F=s0(r.url);if(F&&he.protocols.indexOf(F)===-1){s(new vt("Unsupported protocol "+F+":",vt.ERR_BAD_REQUEST,t));return}H.send(o||null)})},d0=(t,e)=>{const{length:n}=t=t?t.filter(Boolean):[];if(e||n){let s=new AbortController,r;const o=function(f){if(!r){r=!0,l();const h=f instanceof Error?f:this.reason;s.abort(h instanceof vt?h:new nr(h instanceof Error?h.message:h))}};let a=e&&setTimeout(()=>{a=null,o(new vt(`timeout ${e} of ms exceeded`,vt.ETIMEDOUT))},e);const l=()=>{t&&(a&&clearTimeout(a),a=null,t.forEach(f=>{f.unsubscribe?f.unsubscribe(o):f.removeEventListener("abort",o)}),t=null)};t.forEach(f=>f.addEventListener("abort",o));const{signal:u}=s;return u.unsubscribe=()=>B.asap(l),u}},h0=function*(t,e){let n=t.byteLength;if(n{const r=p0(t,e);let o=0,a,l=u=>{a||(a=!0,s&&s(u))};return new ReadableStream({async pull(u){try{const{done:f,value:h}=await r.next();if(f){l(),u.close();return}let p=h.byteLength;if(n){let g=o+=p;n(g)}u.enqueue(new Uint8Array(h))}catch(f){throw l(f),f}},cancel(u){return l(u),r.return()}},{highWaterMark:2})},uo=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",cp=uo&&typeof ReadableStream=="function",g0=uo&&(typeof TextEncoder=="function"?(t=>e=>t.encode(e))(new TextEncoder):async t=>new Uint8Array(await new Response(t).arrayBuffer())),up=(t,...e)=>{try{return!!t(...e)}catch{return!1}},_0=cp&&up(()=>{let t=!1;const e=new Request(he.origin,{body:new ReadableStream,method:"POST",get duplex(){return t=!0,"half"}}).headers.has("Content-Type");return t&&!e}),_f=64*1024,rl=cp&&up(()=>B.isReadableStream(new Response("").body)),qi={stream:rl&&(t=>t.body)};uo&&(t=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!qi[e]&&(qi[e]=B.isFunction(t[e])?n=>n[e]():(n,s)=>{throw new vt(`Response type '${e}' is not supported`,vt.ERR_NOT_SUPPORT,s)})})})(new Response);const b0=async t=>{if(t==null)return 0;if(B.isBlob(t))return t.size;if(B.isSpecCompliantForm(t))return(await new Request(he.origin,{method:"POST",body:t}).arrayBuffer()).byteLength;if(B.isArrayBufferView(t)||B.isArrayBuffer(t))return t.byteLength;if(B.isURLSearchParams(t)&&(t=t+""),B.isString(t))return(await g0(t)).byteLength},v0=async(t,e)=>{const n=B.toFiniteNumber(t.getContentLength());return n??b0(e)},y0=uo&&(async t=>{let{url:e,method:n,data:s,signal:r,cancelToken:o,timeout:a,onDownloadProgress:l,onUploadProgress:u,responseType:f,headers:h,withCredentials:p="same-origin",fetchOptions:g}=lp(t);f=f?(f+"").toLowerCase():"text";let _=d0([r,o&&o.toAbortSignal()],a),E;const A=_&&_.unsubscribe&&(()=>{_.unsubscribe()});let H;try{if(u&&_0&&n!=="get"&&n!=="head"&&(H=await v0(h,s))!==0){let q=new Request(e,{method:"POST",body:s,duplex:"half"}),O;if(B.isFormData(s)&&(O=q.headers.get("content-type"))&&h.setContentType(O),q.body){const[R,w]=hf(H,ji(pf(u)));s=gf(q.body,_f,R,w)}}B.isString(p)||(p=p?"include":"omit");const I="credentials"in Request.prototype;E=new Request(e,{...g,signal:_,method:n.toUpperCase(),headers:h.normalize().toJSON(),body:s,duplex:"half",credentials:I?p:void 0});let F=await fetch(E);const k=rl&&(f==="stream"||f==="response");if(rl&&(l||k&&A)){const q={};["status","statusText","headers"].forEach(S=>{q[S]=F[S]});const O=B.toFiniteNumber(F.headers.get("content-length")),[R,w]=l&&hf(O,ji(pf(l),!0))||[];F=new Response(gf(F.body,_f,R,()=>{w&&w(),A&&A()}),q)}f=f||"text";let U=await qi[B.findKey(qi,f)||"text"](F,t);return!k&&A&&A(),await new Promise((q,O)=>{op(q,O,{data:U,headers:Ce.from(F.headers),status:F.status,statusText:F.statusText,config:t,request:E})})}catch(I){throw A&&A(),I&&I.name==="TypeError"&&/Load failed|fetch/i.test(I.message)?Object.assign(new vt("Network Error",vt.ERR_NETWORK,t,E),{cause:I.cause||I}):vt.from(I,I&&I.code,t,E)}}),il={http:Iw,xhr:f0,fetch:y0};B.forEach(il,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});const bf=t=>`- ${t}`,E0=t=>B.isFunction(t)||t===null||t===!1,fp={getAdapter:t=>{t=B.isArray(t)?t:[t];const{length:e}=t;let n,s;const r={};for(let o=0;o`adapter ${l} `+(u===!1?"is not supported by the environment":"is not available in the build"));let a=e?o.length>1?`since : -`+o.map(bf).join(` -`):" "+bf(o[0]):"as no adapter specified";throw new vt("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return s},adapters:il};function da(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new nr(null,t)}function vf(t){return da(t),t.headers=Ce.from(t.headers),t.data=fa.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),fp.getAdapter(t.adapter||Wr.adapter)(t).then(function(s){return da(t),s.data=fa.call(t,t.transformResponse,s),s.headers=Ce.from(s.headers),s},function(s){return ip(s)||(da(t),s&&s.response&&(s.response.data=fa.call(t,t.transformResponse,s.response),s.response.headers=Ce.from(s.response.headers))),Promise.reject(s)})}const dp="1.9.0",fo={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{fo[t]=function(s){return typeof s===t||"a"+(e<1?"n ":" ")+t}});const yf={};fo.transitional=function(e,n,s){function r(o,a){return"[Axios v"+dp+"] Transitional option '"+o+"'"+a+(s?". "+s:"")}return(o,a,l)=>{if(e===!1)throw new vt(r(a," has been removed"+(n?" in "+n:"")),vt.ERR_DEPRECATED);return n&&!yf[a]&&(yf[a]=!0,console.warn(r(a," has been deprecated since v"+n+" and will be removed in the near future"))),e?e(o,a,l):!0}};fo.spelling=function(e){return(n,s)=>(console.warn(`${s} is likely a misspelling of ${e}`),!0)};function w0(t,e,n){if(typeof t!="object")throw new vt("options must be an object",vt.ERR_BAD_OPTION_VALUE);const s=Object.keys(t);let r=s.length;for(;r-- >0;){const o=s[r],a=e[o];if(a){const l=t[o],u=l===void 0||a(l,o,t);if(u!==!0)throw new vt("option "+o+" must be "+u,vt.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new vt("Unknown option "+o,vt.ERR_BAD_OPTION)}}const $i={assertOptions:w0,validators:fo},tn=$i.validators;let ms=class{constructor(e){this.defaults=e||{},this.interceptors={request:new ff,response:new ff}}async request(e,n){try{return await this._request(e,n)}catch(s){if(s instanceof Error){let r={};Error.captureStackTrace?Error.captureStackTrace(r):r=new Error;const o=r.stack?r.stack.replace(/^.+\n/,""):"";try{s.stack?o&&!String(s.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(s.stack+=` -`+o):s.stack=o}catch{}}throw s}}_request(e,n){typeof e=="string"?(n=n||{},n.url=e):n=e||{},n=vs(this.defaults,n);const{transitional:s,paramsSerializer:r,headers:o}=n;s!==void 0&&$i.assertOptions(s,{silentJSONParsing:tn.transitional(tn.boolean),forcedJSONParsing:tn.transitional(tn.boolean),clarifyTimeoutError:tn.transitional(tn.boolean)},!1),r!=null&&(B.isFunction(r)?n.paramsSerializer={serialize:r}:$i.assertOptions(r,{encode:tn.function,serialize:tn.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),$i.assertOptions(n,{baseUrl:tn.spelling("baseURL"),withXsrfToken:tn.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let a=o&&B.merge(o.common,o[n.method]);o&&B.forEach(["delete","get","head","post","put","patch","common"],E=>{delete o[E]}),n.headers=Ce.concat(a,o);const l=[];let u=!0;this.interceptors.request.forEach(function(A){typeof A.runWhen=="function"&&A.runWhen(n)===!1||(u=u&&A.synchronous,l.unshift(A.fulfilled,A.rejected))});const f=[];this.interceptors.response.forEach(function(A){f.push(A.fulfilled,A.rejected)});let h,p=0,g;if(!u){const E=[vf.bind(this),void 0];for(E.unshift.apply(E,l),E.push.apply(E,f),g=E.length,h=Promise.resolve(n);p{if(!s._listeners)return;let o=s._listeners.length;for(;o-- >0;)s._listeners[o](r);s._listeners=null}),this.promise.then=r=>{let o;const a=new Promise(l=>{s.subscribe(l),o=l}).then(r);return a.cancel=function(){s.unsubscribe(o)},a},e(function(o,a,l){s.reason||(s.reason=new nr(o,a,l),n(s.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const n=this._listeners.indexOf(e);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const e=new AbortController,n=s=>{e.abort(s)};return this.subscribe(n),e.signal.unsubscribe=()=>this.unsubscribe(n),e.signal}static source(){let e;return{token:new hp(function(r){e=r}),cancel:e}}};function A0(t){return function(n){return t.apply(null,n)}}function S0(t){return B.isObject(t)&&t.isAxiosError===!0}const ol={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(ol).forEach(([t,e])=>{ol[e]=t});function pp(t){const e=new ms(t),n=qh(ms.prototype.request,e);return B.extend(n,ms.prototype,e,{allOwnKeys:!0}),B.extend(n,e,null,{allOwnKeys:!0}),n.create=function(r){return pp(vs(t,r))},n}const Kt=pp(Wr);Kt.Axios=ms;Kt.CanceledError=nr;Kt.CancelToken=T0;Kt.isCancel=ip;Kt.VERSION=dp;Kt.toFormData=co;Kt.AxiosError=vt;Kt.Cancel=Kt.CanceledError;Kt.all=function(e){return Promise.all(e)};Kt.spread=A0;Kt.isAxiosError=S0;Kt.mergeConfig=vs;Kt.AxiosHeaders=Ce;Kt.formToJSON=t=>rp(B.isHTMLForm(t)?new FormData(t):t);Kt.getAdapter=fp.getAdapter;Kt.HttpStatusCode=ol;Kt.default=Kt;const{Axios:cS,AxiosError:uS,CanceledError:fS,isCancel:dS,CancelToken:hS,VERSION:pS,all:mS,Cancel:gS,isAxiosError:_S,spread:bS,toFormData:vS,AxiosHeaders:yS,HttpStatusCode:ES,formToJSON:wS,getAdapter:TS,mergeConfig:AS}=Kt,Yr=t=>`${window.location.protocol}//${(window.location.host+window.location.pathname+t).replace(/\/\//g,"/")}`,Bl=async(t,e={})=>{try{return(await Kt.post(Yr(t),e)).data}catch(n){console.log(n);return}},al=async(t,e={})=>{try{return(await Kt.get(Yr(t),e)).data}catch(n){console.log(n);return}},un=UE("clientStore",{state:()=>({serverInformation:{},notifications:[],configurations:[],clientProfile:{Email:"",Profile:{}}}),actions:{newNotification(t,e){this.notifications.push({id:jh().toString(),status:e,content:t,time:yr(),show:!0})},async getClientProfile(){const t=await al("/api/settings/getClientProfile");t?this.clientProfile.Profile=t.data:this.newNotification("Failed to fetch client profile","danger")},async getConfigurations(){const t=await al("/api/configurations");t?this.configurations=t.data:this.newNotification("Failed to fetch configurations","danger")}}}),sr=(t,e)=>{const n=t.__vccOpts||t;for(const[s,r]of e)n[s]=r;return n},C0={class:"card-body"},O0={class:"d-flex align-items-center mb-2"},R0={class:"ms-auto"},N0={class:"fw-medium"},$0={__name:"notification",props:{notificationData:{id:"",show:!0,content:"",time:"",status:""}},setup(t){const e=t;let n;const s=()=>{e.notificationData.show=!0,n=setTimeout(()=>{o()},5e3)},r=()=>clearTimeout(n),o=()=>e.notificationData.show=!1;return Es(()=>{s()}),(a,l)=>(Tt(),Lt("div",{onMouseenter:l[1]||(l[1]=u=>r()),onMouseleave:l[2]||(l[2]=u=>t.notificationData.show?s():void 0),class:yn([{"text-bg-success":t.notificationData.status==="success","text-bg-warning":t.notificationData.status==="warning","text-bg-danger":t.notificationData.status==="danger"},"card shadow rounded-3 position-relative message ms-auto notification"])},[L("div",C0,[L("div",O0,[L("small",null,Be(t.notificationData.time.format("hh:mm A")),1),L("small",R0,[L("a",{role:"button",onClick:l[0]||(l[0]=u=>o())},l[3]||(l[3]=[Yt(" Dismiss"),L("i",{class:"bi bi-x-lg ms-2"},null,-1)]))])]),L("span",N0,Be(t.notificationData.content),1)])],34))}},x0=sr($0,[["__scopeId","data-v-3303bfcd"]]),P0={class:"messageCentre text-body position-absolute d-flex"},D0={__name:"notificationList",setup(t){const e=un(),n=zt(()=>e.notifications.filter(s=>s.show).slice().reverse());return(s,r)=>(Tt(),Lt("div",P0,[$t(EE,{name:"message",tag:"div",class:"position-relative flex-sm-grow-0 flex-grow-1 d-flex align-items-end ms-sm-auto flex-column gap-2"},{default:De(()=>[(Tt(!0),Lt(we,null,Ol(n.value,o=>(Tt(),jn(x0,{notificationData:o,key:o.id},null,8,["notificationData"]))),128))]),_:1})]))}},L0=sr(D0,[["__scopeId","data-v-e4fed80c"]]),I0={"data-bs-theme":"dark",class:"text-body bg-body vw-100 vh-100 bg-body-tertiary"},M0={class:"d-flex vh-100 vw-100 p-sm-4 overflow-y-scroll"},k0={class:"mx-auto my-sm-auto position-relative",id:"listContainer",style:{width:"700px"}},B0={__name:"App",setup(t){const e=un();return fetch("/client/api/serverInformation").then(n=>n.json()).then(n=>e.serverInformation=n.data),(n,s)=>{const r=qr("RouterView");return Tt(),Lt("div",I0,[L("div",M0,[L("div",k0,[(Tt(),jn(Py,null,{default:De(()=>[$t(r,null,{default:De(({Component:o})=>[$t(so,{name:"app",type:"transition",mode:"out-in"},{default:De(()=>[(Tt(),jn(ey(o)))]),_:2},1024)]),_:1})]),_:1}))])]),$t(L0)])}}},F0=sr(B0,[["__scopeId","data-v-9c24c21b"]]);/*! - * vue-router v4.5.1 - * (c) 2025 Eduardo San Martin Morote - * @license MIT - */const js=typeof document<"u";function mp(t){return typeof t=="object"||"displayName"in t||"props"in t||"__vccOpts"in t}function H0(t){return t.__esModule||t[Symbol.toStringTag]==="Module"||t.default&&mp(t.default)}const Pt=Object.assign;function ha(t,e){const n={};for(const s in e){const r=e[s];n[s]=Ge(r)?r.map(t):t(r)}return n}const Rr=()=>{},Ge=Array.isArray,gp=/#/g,V0=/&/g,U0=/\//g,j0=/=/g,q0=/\?/g,_p=/\+/g,K0=/%5B/g,W0=/%5D/g,bp=/%5E/g,Y0=/%60/g,vp=/%7B/g,z0=/%7C/g,yp=/%7D/g,G0=/%20/g;function Fl(t){return encodeURI(""+t).replace(z0,"|").replace(K0,"[").replace(W0,"]")}function J0(t){return Fl(t).replace(vp,"{").replace(yp,"}").replace(bp,"^")}function ll(t){return Fl(t).replace(_p,"%2B").replace(G0,"+").replace(gp,"%23").replace(V0,"%26").replace(Y0,"`").replace(vp,"{").replace(yp,"}").replace(bp,"^")}function Q0(t){return ll(t).replace(j0,"%3D")}function X0(t){return Fl(t).replace(gp,"%23").replace(q0,"%3F")}function Z0(t){return t==null?"":X0(t).replace(U0,"%2F")}function Fr(t){try{return decodeURIComponent(""+t)}catch{}return""+t}const tT=/\/$/,eT=t=>t.replace(tT,"");function pa(t,e,n="/"){let s,r={},o="",a="";const l=e.indexOf("#");let u=e.indexOf("?");return l=0&&(u=-1),u>-1&&(s=e.slice(0,u),o=e.slice(u+1,l>-1?l:e.length),r=t(o)),l>-1&&(s=s||e.slice(0,l),a=e.slice(l,e.length)),s=iT(s??e,n),{fullPath:s+(o&&"?")+o+a,path:s,query:r,hash:Fr(a)}}function nT(t,e){const n=e.query?t(e.query):"";return e.path+(n&&"?")+n+(e.hash||"")}function Ef(t,e){return!e||!t.toLowerCase().startsWith(e.toLowerCase())?t:t.slice(e.length)||"/"}function sT(t,e,n){const s=e.matched.length-1,r=n.matched.length-1;return s>-1&&s===r&&Xs(e.matched[s],n.matched[r])&&Ep(e.params,n.params)&&t(e.query)===t(n.query)&&e.hash===n.hash}function Xs(t,e){return(t.aliasOf||t)===(e.aliasOf||e)}function Ep(t,e){if(Object.keys(t).length!==Object.keys(e).length)return!1;for(const n in t)if(!rT(t[n],e[n]))return!1;return!0}function rT(t,e){return Ge(t)?wf(t,e):Ge(e)?wf(e,t):t===e}function wf(t,e){return Ge(e)?t.length===e.length&&t.every((n,s)=>n===e[s]):t.length===1&&t[0]===e}function iT(t,e){if(t.startsWith("/"))return t;if(!t)return e;const n=e.split("/"),s=t.split("/"),r=s[s.length-1];(r===".."||r===".")&&s.push("");let o=n.length-1,a,l;for(a=0;a1&&o--;else break;return n.slice(0,o).join("/")+"/"+s.slice(a).join("/")}const Pn={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var Hr;(function(t){t.pop="pop",t.push="push"})(Hr||(Hr={}));var Nr;(function(t){t.back="back",t.forward="forward",t.unknown=""})(Nr||(Nr={}));function oT(t){if(!t)if(js){const e=document.querySelector("base");t=e&&e.getAttribute("href")||"/",t=t.replace(/^\w+:\/\/[^\/]+/,"")}else t="/";return t[0]!=="/"&&t[0]!=="#"&&(t="/"+t),eT(t)}const aT=/^[^#]+#/;function lT(t,e){return t.replace(aT,"#")+e}function cT(t,e){const n=document.documentElement.getBoundingClientRect(),s=t.getBoundingClientRect();return{behavior:e.behavior,left:s.left-n.left-(e.left||0),top:s.top-n.top-(e.top||0)}}const ho=()=>({left:window.scrollX,top:window.scrollY});function uT(t){let e;if("el"in t){const n=t.el,s=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;e=cT(r,t)}else e=t;"scrollBehavior"in document.documentElement.style?window.scrollTo(e):window.scrollTo(e.left!=null?e.left:window.scrollX,e.top!=null?e.top:window.scrollY)}function Tf(t,e){return(history.state?history.state.position-e:-1)+t}const cl=new Map;function fT(t,e){cl.set(t,e)}function dT(t){const e=cl.get(t);return cl.delete(t),e}let hT=()=>location.protocol+"//"+location.host;function wp(t,e){const{pathname:n,search:s,hash:r}=e,o=t.indexOf("#");if(o>-1){let l=r.includes(t.slice(o))?t.slice(o).length:1,u=r.slice(l);return u[0]!=="/"&&(u="/"+u),Ef(u,"")}return Ef(n,t)+s+r}function pT(t,e,n,s){let r=[],o=[],a=null;const l=({state:g})=>{const _=wp(t,location),E=n.value,A=e.value;let H=0;if(g){if(n.value=_,e.value=g,a&&a===E){a=null;return}H=A?g.position-A.position:0}else s(_);r.forEach(I=>{I(n.value,E,{delta:H,type:Hr.pop,direction:H?H>0?Nr.forward:Nr.back:Nr.unknown})})};function u(){a=n.value}function f(g){r.push(g);const _=()=>{const E=r.indexOf(g);E>-1&&r.splice(E,1)};return o.push(_),_}function h(){const{history:g}=window;g.state&&g.replaceState(Pt({},g.state,{scroll:ho()}),"")}function p(){for(const g of o)g();o=[],window.removeEventListener("popstate",l),window.removeEventListener("beforeunload",h)}return window.addEventListener("popstate",l),window.addEventListener("beforeunload",h,{passive:!0}),{pauseListeners:u,listen:f,destroy:p}}function Af(t,e,n,s=!1,r=!1){return{back:t,current:e,forward:n,replaced:s,position:window.history.length,scroll:r?ho():null}}function mT(t){const{history:e,location:n}=window,s={value:wp(t,n)},r={value:e.state};r.value||o(s.value,{back:null,current:s.value,forward:null,position:e.length-1,replaced:!0,scroll:null},!0);function o(u,f,h){const p=t.indexOf("#"),g=p>-1?(n.host&&document.querySelector("base")?t:t.slice(p))+u:hT()+t+u;try{e[h?"replaceState":"pushState"](f,"",g),r.value=f}catch(_){console.error(_),n[h?"replace":"assign"](g)}}function a(u,f){const h=Pt({},e.state,Af(r.value.back,u,r.value.forward,!0),f,{position:r.value.position});o(u,h,!0),s.value=u}function l(u,f){const h=Pt({},r.value,e.state,{forward:u,scroll:ho()});o(h.current,h,!0);const p=Pt({},Af(s.value,u,null),{position:h.position+1},f);o(u,p,!1),s.value=u}return{location:s,state:r,push:l,replace:a}}function gT(t){t=oT(t);const e=mT(t),n=pT(t,e.state,e.location,e.replace);function s(o,a=!0){a||n.pauseListeners(),history.go(o)}const r=Pt({location:"",base:t,go:s,createHref:lT.bind(null,t)},e,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>e.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>e.state.value}),r}function _T(t){return t=location.host?t||location.pathname+location.search:"",t.includes("#")||(t+="#"),gT(t)}function bT(t){return typeof t=="string"||t&&typeof t=="object"}function Tp(t){return typeof t=="string"||typeof t=="symbol"}const Ap=Symbol("");var Sf;(function(t){t[t.aborted=4]="aborted",t[t.cancelled=8]="cancelled",t[t.duplicated=16]="duplicated"})(Sf||(Sf={}));function Zs(t,e){return Pt(new Error,{type:t,[Ap]:!0},e)}function mn(t,e){return t instanceof Error&&Ap in t&&(e==null||!!(t.type&e))}const Cf="[^/]+?",vT={sensitive:!1,strict:!1,start:!0,end:!0},yT=/[.+*?^${}()[\]/\\]/g;function ET(t,e){const n=Pt({},vT,e),s=[];let r=n.start?"^":"";const o=[];for(const f of t){const h=f.length?[]:[90];n.strict&&!f.length&&(r+="/");for(let p=0;pe.length?e.length===1&&e[0]===80?1:-1:0}function Sp(t,e){let n=0;const s=t.score,r=e.score;for(;n0&&e[e.length-1]<0}const TT={type:0,value:""},AT=/[a-zA-Z0-9_]/;function ST(t){if(!t)return[[]];if(t==="/")return[[TT]];if(!t.startsWith("/"))throw new Error(`Invalid path "${t}"`);function e(_){throw new Error(`ERR (${n})/"${f}": ${_}`)}let n=0,s=n;const r=[];let o;function a(){o&&r.push(o),o=[]}let l=0,u,f="",h="";function p(){f&&(n===0?o.push({type:0,value:f}):n===1||n===2||n===3?(o.length>1&&(u==="*"||u==="+")&&e(`A repeatable param (${f}) must be alone in its segment. eg: '/:ids+.`),o.push({type:1,value:f,regexp:h,repeatable:u==="*"||u==="+",optional:u==="*"||u==="?"})):e("Invalid state to consume buffer"),f="")}function g(){f+=u}for(;l{a(k)}:Rr}function a(p){if(Tp(p)){const g=s.get(p);g&&(s.delete(p),n.splice(n.indexOf(g),1),g.children.forEach(a),g.alias.forEach(a))}else{const g=n.indexOf(p);g>-1&&(n.splice(g,1),p.record.name&&s.delete(p.record.name),p.children.forEach(a),p.alias.forEach(a))}}function l(){return n}function u(p){const g=$T(p,n);n.splice(g,0,p),p.record.name&&!$f(p)&&s.set(p.record.name,p)}function f(p,g){let _,E={},A,H;if("name"in p&&p.name){if(_=s.get(p.name),!_)throw Zs(1,{location:p});H=_.record.name,E=Pt(Rf(g.params,_.keys.filter(k=>!k.optional).concat(_.parent?_.parent.keys.filter(k=>k.optional):[]).map(k=>k.name)),p.params&&Rf(p.params,_.keys.map(k=>k.name))),A=_.stringify(E)}else if(p.path!=null)A=p.path,_=n.find(k=>k.re.test(A)),_&&(E=_.parse(A),H=_.record.name);else{if(_=g.name?s.get(g.name):n.find(k=>k.re.test(g.path)),!_)throw Zs(1,{location:p,currentLocation:g});H=_.record.name,E=Pt({},g.params,p.params),A=_.stringify(E)}const I=[];let F=_;for(;F;)I.unshift(F.record),F=F.parent;return{name:H,path:A,params:E,matched:I,meta:NT(I)}}t.forEach(p=>o(p));function h(){n.length=0,s.clear()}return{addRoute:o,resolve:f,removeRoute:a,clearRoutes:h,getRoutes:l,getRecordMatcher:r}}function Rf(t,e){const n={};for(const s of e)s in t&&(n[s]=t[s]);return n}function Nf(t){const e={path:t.path,redirect:t.redirect,name:t.name,meta:t.meta||{},aliasOf:t.aliasOf,beforeEnter:t.beforeEnter,props:RT(t),children:t.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in t?t.components||null:t.component&&{default:t.component}};return Object.defineProperty(e,"mods",{value:{}}),e}function RT(t){const e={},n=t.props||!1;if("component"in t)e.default=n;else for(const s in t.components)e[s]=typeof n=="object"?n[s]:n;return e}function $f(t){for(;t;){if(t.record.aliasOf)return!0;t=t.parent}return!1}function NT(t){return t.reduce((e,n)=>Pt(e,n.meta),{})}function xf(t,e){const n={};for(const s in t)n[s]=s in e?e[s]:t[s];return n}function $T(t,e){let n=0,s=e.length;for(;n!==s;){const o=n+s>>1;Sp(t,e[o])<0?s=o:n=o+1}const r=xT(t);return r&&(s=e.lastIndexOf(r,s-1)),s}function xT(t){let e=t;for(;e=e.parent;)if(Cp(e)&&Sp(t,e)===0)return e}function Cp({record:t}){return!!(t.name||t.components&&Object.keys(t.components).length||t.redirect)}function PT(t){const e={};if(t===""||t==="?")return e;const s=(t[0]==="?"?t.slice(1):t).split("&");for(let r=0;ro&&ll(o)):[s&&ll(s)]).forEach(o=>{o!==void 0&&(e+=(e.length?"&":"")+n,o!=null&&(e+="="+o))})}return e}function DT(t){const e={};for(const n in t){const s=t[n];s!==void 0&&(e[n]=Ge(s)?s.map(r=>r==null?null:""+r):s==null?s:""+s)}return e}const LT=Symbol(""),Df=Symbol(""),po=Symbol(""),Hl=Symbol(""),ul=Symbol("");function _r(){let t=[];function e(s){return t.push(s),()=>{const r=t.indexOf(s);r>-1&&t.splice(r,1)}}function n(){t=[]}return{add:e,list:()=>t.slice(),reset:n}}function Fn(t,e,n,s,r,o=a=>a()){const a=s&&(s.enterCallbacks[r]=s.enterCallbacks[r]||[]);return()=>new Promise((l,u)=>{const f=g=>{g===!1?u(Zs(4,{from:n,to:e})):g instanceof Error?u(g):bT(g)?u(Zs(2,{from:e,to:g})):(a&&s.enterCallbacks[r]===a&&typeof g=="function"&&a.push(g),l())},h=o(()=>t.call(s&&s.instances[r],e,n,f));let p=Promise.resolve(h);t.length<3&&(p=p.then(f)),p.catch(g=>u(g))})}function ma(t,e,n,s,r=o=>o()){const o=[];for(const a of t)for(const l in a.components){let u=a.components[l];if(!(e!=="beforeRouteEnter"&&!a.instances[l]))if(mp(u)){const h=(u.__vccOpts||u)[e];h&&o.push(Fn(h,n,s,a,l,r))}else{let f=u();o.push(()=>f.then(h=>{if(!h)throw new Error(`Couldn't resolve component "${l}" at "${a.path}"`);const p=H0(h)?h.default:h;a.mods[l]=h,a.components[l]=p;const _=(p.__vccOpts||p)[e];return _&&Fn(_,n,s,a,l,r)()}))}}return o}function Lf(t){const e=He(po),n=He(Hl),s=zt(()=>{const u=an(t.to);return e.resolve(u)}),r=zt(()=>{const{matched:u}=s.value,{length:f}=u,h=u[f-1],p=n.matched;if(!h||!p.length)return-1;const g=p.findIndex(Xs.bind(null,h));if(g>-1)return g;const _=If(u[f-2]);return f>1&&If(h)===_&&p[p.length-1].path!==_?p.findIndex(Xs.bind(null,u[f-2])):g}),o=zt(()=>r.value>-1&&FT(n.params,s.value.params)),a=zt(()=>r.value>-1&&r.value===n.matched.length-1&&Ep(n.params,s.value.params));function l(u={}){if(BT(u)){const f=e[an(t.replace)?"replace":"push"](an(t.to)).catch(Rr);return t.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>f),f}return Promise.resolve()}return{route:s,href:zt(()=>s.value.href),isActive:o,isExactActive:a,navigate:l}}function IT(t){return t.length===1?t[0]:t}const MT=Zd({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:Lf,setup(t,{slots:e}){const n=An(Lf(t)),{options:s}=He(po),r=zt(()=>({[Mf(t.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[Mf(t.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=e.default&&IT(e.default(n));return t.custom?o:Dl("a",{"aria-current":n.isExactActive?t.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},o)}}}),kT=MT;function BT(t){if(!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)&&!t.defaultPrevented&&!(t.button!==void 0&&t.button!==0)){if(t.currentTarget&&t.currentTarget.getAttribute){const e=t.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(e))return}return t.preventDefault&&t.preventDefault(),!0}}function FT(t,e){for(const n in e){const s=e[n],r=t[n];if(typeof s=="string"){if(s!==r)return!1}else if(!Ge(r)||r.length!==s.length||s.some((o,a)=>o!==r[a]))return!1}return!0}function If(t){return t?t.aliasOf?t.aliasOf.path:t.path:""}const Mf=(t,e,n)=>t??e??n,HT=Zd({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(t,{attrs:e,slots:n}){const s=He(ul),r=zt(()=>t.route||s.value),o=He(Df,0),a=zt(()=>{let f=an(o);const{matched:h}=r.value;let p;for(;(p=h[f])&&!p.components;)f++;return f}),l=zt(()=>r.value.matched[a.value]);Ai(Df,zt(()=>a.value+1)),Ai(LT,l),Ai(ul,r);const u=Ae();return Ys(()=>[u.value,l.value,t.name],([f,h,p],[g,_,E])=>{h&&(h.instances[p]=f,_&&_!==h&&f&&f===g&&(h.leaveGuards.size||(h.leaveGuards=_.leaveGuards),h.updateGuards.size||(h.updateGuards=_.updateGuards))),f&&h&&(!_||!Xs(h,_)||!g)&&(h.enterCallbacks[p]||[]).forEach(A=>A(f))},{flush:"post"}),()=>{const f=r.value,h=t.name,p=l.value,g=p&&p.components[h];if(!g)return kf(n.default,{Component:g,route:f});const _=p.props[h],E=_?_===!0?f.params:typeof _=="function"?_(f):_:null,H=Dl(g,Pt({},E,e,{onVnodeUnmounted:I=>{I.component.isUnmounted&&(p.instances[h]=null)},ref:u}));return kf(n.default,{Component:H,route:f})||H}}});function kf(t,e){if(!t)return null;const n=t(e);return n.length===1?n[0]:n}const VT=HT;function UT(t){const e=OT(t.routes,t),n=t.parseQuery||PT,s=t.stringifyQuery||Pf,r=t.history,o=_r(),a=_r(),l=_r(),u=xv(Pn);let f=Pn;js&&t.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const h=ha.bind(null,V=>""+V),p=ha.bind(null,Z0),g=ha.bind(null,Fr);function _(V,T){let et,it;return Tp(V)?(et=e.getRecordMatcher(V),it=T):it=V,e.addRoute(it,et)}function E(V){const T=e.getRecordMatcher(V);T&&e.removeRoute(T)}function A(){return e.getRoutes().map(V=>V.record)}function H(V){return!!e.getRecordMatcher(V)}function I(V,T){if(T=Pt({},T||u.value),typeof V=="string"){const C=pa(n,V,T.path),K=e.resolve({path:C.path},T),G=r.createHref(C.fullPath);return Pt(C,K,{params:g(K.params),hash:Fr(C.hash),redirectedFrom:void 0,href:G})}let et;if(V.path!=null)et=Pt({},V,{path:pa(n,V.path,T.path).path});else{const C=Pt({},V.params);for(const K in C)C[K]==null&&delete C[K];et=Pt({},V,{params:p(C)}),T.params=p(T.params)}const it=e.resolve(et,T),yt=V.hash||"";it.params=h(g(it.params));const b=nT(s,Pt({},V,{hash:J0(yt),path:it.path})),v=r.createHref(b);return Pt({fullPath:b,hash:yt,query:s===Pf?DT(V.query):V.query||{}},it,{redirectedFrom:void 0,href:v})}function F(V){return typeof V=="string"?pa(n,V,u.value.path):Pt({},V)}function k(V,T){if(f!==V)return Zs(8,{from:T,to:V})}function U(V){return R(V)}function q(V){return U(Pt(F(V),{replace:!0}))}function O(V){const T=V.matched[V.matched.length-1];if(T&&T.redirect){const{redirect:et}=T;let it=typeof et=="function"?et(V):et;return typeof it=="string"&&(it=it.includes("?")||it.includes("#")?it=F(it):{path:it},it.params={}),Pt({query:V.query,hash:V.hash,params:it.path!=null?{}:V.params},it)}}function R(V,T){const et=f=I(V),it=u.value,yt=V.state,b=V.force,v=V.replace===!0,C=O(et);if(C)return R(Pt(F(C),{state:typeof C=="object"?Pt({},yt,C.state):yt,force:b,replace:v}),T||et);const K=et;K.redirectedFrom=T;let G;return!b&&sT(s,it,et)&&(G=Zs(16,{to:K,from:it}),gt(it,it,!0,!1)),(G?Promise.resolve(G):D(K,it)).catch(N=>mn(N)?mn(N,2)?N:ut(N):J(N,K,it)).then(N=>{if(N){if(mn(N,2))return R(Pt({replace:v},F(N.to),{state:typeof N.to=="object"?Pt({},yt,N.to.state):yt,force:b}),T||K)}else N=P(K,it,!0,v,yt);return M(K,it,N),N})}function w(V,T){const et=k(V,T);return et?Promise.reject(et):Promise.resolve()}function S(V){const T=It.values().next().value;return T&&typeof T.runWithContext=="function"?T.runWithContext(V):V()}function D(V,T){let et;const[it,yt,b]=jT(V,T);et=ma(it.reverse(),"beforeRouteLeave",V,T);for(const C of it)C.leaveGuards.forEach(K=>{et.push(Fn(K,V,T))});const v=w.bind(null,V,T);return et.push(v),Wt(et).then(()=>{et=[];for(const C of o.list())et.push(Fn(C,V,T));return et.push(v),Wt(et)}).then(()=>{et=ma(yt,"beforeRouteUpdate",V,T);for(const C of yt)C.updateGuards.forEach(K=>{et.push(Fn(K,V,T))});return et.push(v),Wt(et)}).then(()=>{et=[];for(const C of b)if(C.beforeEnter)if(Ge(C.beforeEnter))for(const K of C.beforeEnter)et.push(Fn(K,V,T));else et.push(Fn(C.beforeEnter,V,T));return et.push(v),Wt(et)}).then(()=>(V.matched.forEach(C=>C.enterCallbacks={}),et=ma(b,"beforeRouteEnter",V,T,S),et.push(v),Wt(et))).then(()=>{et=[];for(const C of a.list())et.push(Fn(C,V,T));return et.push(v),Wt(et)}).catch(C=>mn(C,8)?C:Promise.reject(C))}function M(V,T,et){l.list().forEach(it=>S(()=>it(V,T,et)))}function P(V,T,et,it,yt){const b=k(V,T);if(b)return b;const v=T===Pn,C=js?history.state:{};et&&(it||v?r.replace(V.fullPath,Pt({scroll:v&&C&&C.scroll},yt)):r.push(V.fullPath,yt)),u.value=V,gt(V,T,et,v),ut()}let z;function j(){z||(z=r.listen((V,T,et)=>{if(!jt.listening)return;const it=I(V),yt=O(it);if(yt){R(Pt(yt,{replace:!0,force:!0}),it).catch(Rr);return}f=it;const b=u.value;js&&fT(Tf(b.fullPath,et.delta),ho()),D(it,b).catch(v=>mn(v,12)?v:mn(v,2)?(R(Pt(F(v.to),{force:!0}),it).then(C=>{mn(C,20)&&!et.delta&&et.type===Hr.pop&&r.go(-1,!1)}).catch(Rr),Promise.reject()):(et.delta&&r.go(-et.delta,!1),J(v,it,b))).then(v=>{v=v||P(it,b,!1),v&&(et.delta&&!mn(v,8)?r.go(-et.delta,!1):et.type===Hr.pop&&mn(v,20)&&r.go(-1,!1)),M(it,b,v)}).catch(Rr)}))}let X=_r(),Y=_r(),Q;function J(V,T,et){ut(V);const it=Y.list();return it.length?it.forEach(yt=>yt(V,T,et)):console.error(V),Promise.reject(V)}function ct(){return Q&&u.value!==Pn?Promise.resolve():new Promise((V,T)=>{X.add([V,T])})}function ut(V){return Q||(Q=!V,j(),X.list().forEach(([T,et])=>V?et(V):T()),X.reset()),V}function gt(V,T,et,it){const{scrollBehavior:yt}=t;if(!js||!yt)return Promise.resolve();const b=!et&&dT(Tf(V.fullPath,0))||(it||!et)&&history.state&&history.state.scroll||null;return Qi().then(()=>yt(V,T,b)).then(v=>v&&uT(v)).catch(v=>J(v,V,T))}const bt=V=>r.go(V);let Rt;const It=new Set,jt={currentRoute:u,listening:!0,addRoute:_,removeRoute:E,clearRoutes:e.clearRoutes,hasRoute:H,getRoutes:A,resolve:I,options:t,push:U,replace:q,go:bt,back:()=>bt(-1),forward:()=>bt(1),beforeEach:o.add,beforeResolve:a.add,afterEach:l.add,onError:Y.add,isReady:ct,install(V){const T=this;V.component("RouterLink",kT),V.component("RouterView",VT),V.config.globalProperties.$router=T,Object.defineProperty(V.config.globalProperties,"$route",{enumerable:!0,get:()=>an(u)}),js&&!Rt&&u.value===Pn&&(Rt=!0,U(r.location).catch(yt=>{}));const et={};for(const yt in Pn)Object.defineProperty(et,yt,{get:()=>u.value[yt],enumerable:!0});V.provide(po,T),V.provide(Hl,Bd(et)),V.provide(ul,u);const it=V.unmount;It.add(V),V.unmount=function(){It.delete(V),It.size<1&&(f=Pn,z&&z(),z=null,u.value=Pn,Rt=!1,Q=!1),it()}}};function Wt(V){return V.reduce((T,et)=>T.then(()=>S(et)),Promise.resolve())}return jt}function jT(t,e){const n=[],s=[],r=[],o=Math.max(e.matched.length,t.matched.length);for(let a=0;aXs(f,l))?s.push(l):n.push(l));const u=t.matched[a];u&&(e.matched.find(f=>Xs(f,u))||r.push(u))}return[n,s,r]}function Op(){return He(po)}function qT(t){return He(Hl)}var Vs={},ga,Bf;function KT(){return Bf||(Bf=1,ga=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}),ga}var _a={},Dn={},Ff;function ws(){if(Ff)return Dn;Ff=1;let t;const e=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];return Dn.getSymbolSize=function(s){if(!s)throw new Error('"version" cannot be null or undefined');if(s<1||s>40)throw new Error('"version" should be in range from 1 to 40');return s*4+17},Dn.getSymbolTotalCodewords=function(s){return e[s]},Dn.getBCHDigit=function(n){let s=0;for(;n!==0;)s++,n>>>=1;return s},Dn.setToSJISFunction=function(s){if(typeof s!="function")throw new Error('"toSJISFunc" is not a valid function.');t=s},Dn.isKanjiModeEnabled=function(){return typeof t<"u"},Dn.toSJIS=function(s){return t(s)},Dn}var ba={},Hf;function Vl(){return Hf||(Hf=1,function(t){t.L={bit:1},t.M={bit:0},t.Q={bit:3},t.H={bit:2};function e(n){if(typeof n!="string")throw new Error("Param is not a string");switch(n.toLowerCase()){case"l":case"low":return t.L;case"m":case"medium":return t.M;case"q":case"quartile":return t.Q;case"h":case"high":return t.H;default:throw new Error("Unknown EC Level: "+n)}}t.isValid=function(s){return s&&typeof s.bit<"u"&&s.bit>=0&&s.bit<4},t.from=function(s,r){if(t.isValid(s))return s;try{return e(s)}catch{return r}}}(ba)),ba}var va,Vf;function WT(){if(Vf)return va;Vf=1;function t(){this.buffer=[],this.length=0}return t.prototype={get:function(e){const n=Math.floor(e/8);return(this.buffer[n]>>>7-e%8&1)===1},put:function(e,n){for(let s=0;s>>n-s-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(e){const n=Math.floor(this.length/8);this.buffer.length<=n&&this.buffer.push(0),e&&(this.buffer[n]|=128>>>this.length%8),this.length++}},va=t,va}var ya,Uf;function YT(){if(Uf)return ya;Uf=1;function t(e){if(!e||e<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=e,this.data=new Uint8Array(e*e),this.reservedBit=new Uint8Array(e*e)}return t.prototype.set=function(e,n,s,r){const o=e*this.size+n;this.data[o]=s,r&&(this.reservedBit[o]=!0)},t.prototype.get=function(e,n){return this.data[e*this.size+n]},t.prototype.xor=function(e,n,s){this.data[e*this.size+n]^=s},t.prototype.isReserved=function(e,n){return this.reservedBit[e*this.size+n]},ya=t,ya}var Ea={},jf;function zT(){return jf||(jf=1,function(t){const e=ws().getSymbolSize;t.getRowColCoords=function(s){if(s===1)return[];const r=Math.floor(s/7)+2,o=e(s),a=o===145?26:Math.ceil((o-13)/(2*r-2))*2,l=[o-7];for(let u=1;u=0&&r<=7},t.from=function(r){return t.isValid(r)?parseInt(r,10):void 0},t.getPenaltyN1=function(r){const o=r.size;let a=0,l=0,u=0,f=null,h=null;for(let p=0;p=5&&(a+=e.N1+(l-5)),f=_,l=1),_=r.get(g,p),_===h?u++:(u>=5&&(a+=e.N1+(u-5)),h=_,u=1)}l>=5&&(a+=e.N1+(l-5)),u>=5&&(a+=e.N1+(u-5))}return a},t.getPenaltyN2=function(r){const o=r.size;let a=0;for(let l=0;l=10&&(l===1488||l===93)&&a++,u=u<<1&2047|r.get(h,f),h>=10&&(u===1488||u===93)&&a++}return a*e.N3},t.getPenaltyN4=function(r){let o=0;const a=r.data.length;for(let u=0;u=0;){const a=o[0];for(let u=0;u0){const l=new Uint8Array(this.degree);return l.set(o,a),l}return o},Sa=e,Sa}var Ca={},Oa={},Ra={},Jf;function Np(){return Jf||(Jf=1,Ra.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}),Ra}var en={},Qf;function $p(){if(Qf)return en;Qf=1;const t="[0-9]+",e="[A-Z $%*+\\-./:]+";let n="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";n=n.replace(/u/g,"\\u");const s="(?:(?![A-Z0-9 $%*+\\-./:]|"+n+`)(?:.|[\r -]))+`;en.KANJI=new RegExp(n,"g"),en.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),en.BYTE=new RegExp(s,"g"),en.NUMERIC=new RegExp(t,"g"),en.ALPHANUMERIC=new RegExp(e,"g");const r=new RegExp("^"+n+"$"),o=new RegExp("^"+t+"$"),a=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");return en.testKanji=function(u){return r.test(u)},en.testNumeric=function(u){return o.test(u)},en.testAlphanumeric=function(u){return a.test(u)},en}var Xf;function Ts(){return Xf||(Xf=1,function(t){const e=Np(),n=$p();t.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},t.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},t.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},t.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},t.MIXED={bit:-1},t.getCharCountIndicator=function(o,a){if(!o.ccBits)throw new Error("Invalid mode: "+o);if(!e.isValid(a))throw new Error("Invalid version: "+a);return a>=1&&a<10?o.ccBits[0]:a<27?o.ccBits[1]:o.ccBits[2]},t.getBestModeForData=function(o){return n.testNumeric(o)?t.NUMERIC:n.testAlphanumeric(o)?t.ALPHANUMERIC:n.testKanji(o)?t.KANJI:t.BYTE},t.toString=function(o){if(o&&o.id)return o.id;throw new Error("Invalid mode")},t.isValid=function(o){return o&&o.bit&&o.ccBits};function s(r){if(typeof r!="string")throw new Error("Param is not a string");switch(r.toLowerCase()){case"numeric":return t.NUMERIC;case"alphanumeric":return t.ALPHANUMERIC;case"kanji":return t.KANJI;case"byte":return t.BYTE;default:throw new Error("Unknown mode: "+r)}}t.from=function(o,a){if(t.isValid(o))return o;try{return s(o)}catch{return a}}}(Oa)),Oa}var Zf;function tA(){return Zf||(Zf=1,function(t){const e=ws(),n=Rp(),s=Vl(),r=Ts(),o=Np(),a=7973,l=e.getBCHDigit(a);function u(g,_,E){for(let A=1;A<=40;A++)if(_<=t.getCapacity(A,E,g))return A}function f(g,_){return r.getCharCountIndicator(g,_)+4}function h(g,_){let E=0;return g.forEach(function(A){const H=f(A.mode,_);E+=H+A.getBitsLength()}),E}function p(g,_){for(let E=1;E<=40;E++)if(h(g,E)<=t.getCapacity(E,_,r.MIXED))return E}t.from=function(_,E){return o.isValid(_)?parseInt(_,10):E},t.getCapacity=function(_,E,A){if(!o.isValid(_))throw new Error("Invalid QR Code version");typeof A>"u"&&(A=r.BYTE);const H=e.getSymbolTotalCodewords(_),I=n.getTotalCodewordsCount(_,E),F=(H-I)*8;if(A===r.MIXED)return F;const k=F-f(A,_);switch(A){case r.NUMERIC:return Math.floor(k/10*3);case r.ALPHANUMERIC:return Math.floor(k/11*2);case r.KANJI:return Math.floor(k/13);case r.BYTE:default:return Math.floor(k/8)}},t.getBestVersionForData=function(_,E){let A;const H=s.from(E,s.M);if(Array.isArray(_)){if(_.length>1)return p(_,H);if(_.length===0)return 1;A=_[0]}else A=_;return u(A.mode,A.getLength(),H)},t.getEncodedBits=function(_){if(!o.isValid(_)||_<7)throw new Error("Invalid QR Code version");let E=_<<12;for(;e.getBCHDigit(E)-l>=0;)E^=a<=0;)u^=e<0&&(o=this.data.substr(r),a=parseInt(o,10),s.put(a,l*3+1))},xa=e,xa}var Pa,nd;function sA(){if(nd)return Pa;nd=1;const t=Ts(),e=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function n(s){this.mode=t.ALPHANUMERIC,this.data=s}return n.getBitsLength=function(r){return 11*Math.floor(r/2)+6*(r%2)},n.prototype.getLength=function(){return this.data.length},n.prototype.getBitsLength=function(){return n.getBitsLength(this.data.length)},n.prototype.write=function(r){let o;for(o=0;o+2<=this.data.length;o+=2){let a=e.indexOf(this.data[o])*45;a+=e.indexOf(this.data[o+1]),r.put(a,11)}this.data.length%2&&r.put(e.indexOf(this.data[o]),6)},Pa=n,Pa}var Da,sd;function rA(){if(sd)return Da;sd=1;const t=Ts();function e(n){this.mode=t.BYTE,typeof n=="string"?this.data=new TextEncoder().encode(n):this.data=new Uint8Array(n)}return e.getBitsLength=function(s){return s*8},e.prototype.getLength=function(){return this.data.length},e.prototype.getBitsLength=function(){return e.getBitsLength(this.data.length)},e.prototype.write=function(n){for(let s=0,r=this.data.length;s=33088&&o<=40956)o-=33088;else if(o>=57408&&o<=60351)o-=49472;else throw new Error("Invalid SJIS character: "+this.data[r]+` -Make sure your charset is UTF-8`);o=(o>>>8&255)*192+(o&255),s.put(o,13)}},La=n,La}var Ia={exports:{}},id;function oA(){return id||(id=1,function(t){var e={single_source_shortest_paths:function(n,s,r){var o={},a={};a[s]=0;var l=e.PriorityQueue.make();l.push(s,0);for(var u,f,h,p,g,_,E,A,H;!l.empty();){u=l.pop(),f=u.value,p=u.cost,g=n[f]||{};for(h in g)g.hasOwnProperty(h)&&(_=g[h],E=p+_,A=a[h],H=typeof a[h]>"u",(H||A>E)&&(a[h]=E,l.push(h,E),o[h]=f))}if(typeof r<"u"&&typeof a[r]>"u"){var I=["Could not find a path from ",s," to ",r,"."].join("");throw new Error(I)}return o},extract_shortest_path_from_predecessor_list:function(n,s){for(var r=[],o=s;o;)r.push(o),n[o],o=n[o];return r.reverse(),r},find_path:function(n,s,r){var o=e.single_source_shortest_paths(n,s,r);return e.extract_shortest_path_from_predecessor_list(o,r)},PriorityQueue:{make:function(n){var s=e.PriorityQueue,r={},o;n=n||{};for(o in s)s.hasOwnProperty(o)&&(r[o]=s[o]);return r.queue=[],r.sorter=n.sorter||s.default_sorter,r},default_sorter:function(n,s){return n.cost-s.cost},push:function(n,s){var r={value:n,cost:s};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};t.exports=e}(Ia)),Ia.exports}var od;function aA(){return od||(od=1,function(t){const e=Ts(),n=nA(),s=sA(),r=rA(),o=iA(),a=$p(),l=ws(),u=oA();function f(I){return unescape(encodeURIComponent(I)).length}function h(I,F,k){const U=[];let q;for(;(q=I.exec(k))!==null;)U.push({data:q[0],index:q.index,mode:F,length:q[0].length});return U}function p(I){const F=h(a.NUMERIC,e.NUMERIC,I),k=h(a.ALPHANUMERIC,e.ALPHANUMERIC,I);let U,q;return l.isKanjiModeEnabled()?(U=h(a.BYTE,e.BYTE,I),q=h(a.KANJI,e.KANJI,I)):(U=h(a.BYTE_KANJI,e.BYTE,I),q=[]),F.concat(k,U,q).sort(function(R,w){return R.index-w.index}).map(function(R){return{data:R.data,mode:R.mode,length:R.length}})}function g(I,F){switch(F){case e.NUMERIC:return n.getBitsLength(I);case e.ALPHANUMERIC:return s.getBitsLength(I);case e.KANJI:return o.getBitsLength(I);case e.BYTE:return r.getBitsLength(I)}}function _(I){return I.reduce(function(F,k){const U=F.length-1>=0?F[F.length-1]:null;return U&&U.mode===k.mode?(F[F.length-1].data+=k.data,F):(F.push(k),F)},[])}function E(I){const F=[];for(let k=0;k=0&&z<=6&&(j===0||j===6)||j>=0&&j<=6&&(z===0||z===6)||z>=2&&z<=4&&j>=2&&j<=4?O.set(M+z,P+j,!0,!0):O.set(M+z,P+j,!1,!0))}}function E(O){const R=O.size;for(let w=8;w>z&1)===1,O.set(D,M,P,!0),O.set(M,D,P,!0)}function I(O,R,w){const S=O.size,D=h.getEncodedBits(R,w);let M,P;for(M=0;M<15;M++)P=(D>>M&1)===1,M<6?O.set(M,8,P,!0):M<8?O.set(M+1,8,P,!0):O.set(S-15+M,8,P,!0),M<8?O.set(8,S-M-1,P,!0):M<9?O.set(8,15-M-1+1,P,!0):O.set(8,15-M-1,P,!0);O.set(S-8,8,1,!0)}function F(O,R){const w=O.size;let S=-1,D=w-1,M=7,P=0;for(let z=w-1;z>0;z-=2)for(z===6&&z--;;){for(let j=0;j<2;j++)if(!O.isReserved(D,z-j)){let X=!1;P>>M&1)===1),O.set(D,z-j,X),M--,M===-1&&(P++,M=7)}if(D+=S,D<0||w<=D){D-=S,S=-S;break}}}function k(O,R,w){const S=new n;w.forEach(function(j){S.put(j.mode.bit,4),S.put(j.getLength(),p.getCharCountIndicator(j.mode,O)),j.write(S)});const D=t.getSymbolTotalCodewords(O),M=l.getTotalCodewordsCount(O,R),P=(D-M)*8;for(S.getLengthInBits()+4<=P&&S.put(0,4);S.getLengthInBits()%8!==0;)S.putBit(0);const z=(P-S.getLengthInBits())/8;for(let j=0;j=7&&H(j,R),F(j,P),isNaN(S)&&(S=a.getBestMask(j,I.bind(null,j,w))),a.applyMask(S,j),I(j,w,S),{modules:j,version:R,errorCorrectionLevel:w,maskPattern:S,segments:D}}return _a.create=function(R,w){if(typeof R>"u"||R==="")throw new Error("No input text");let S=e.M,D,M;return typeof w<"u"&&(S=e.from(w.errorCorrectionLevel,e.M),D=f.from(w.version),M=a.from(w.maskPattern),w.toSJISFunc&&t.setToSJISFunction(w.toSJISFunc)),q(R,D,S,M)},_a}var Ma={},ka={},ld;function xp(){return ld||(ld=1,function(t){function e(n){if(typeof n=="number"&&(n=n.toString()),typeof n!="string")throw new Error("Color should be defined as hex string");let s=n.slice().replace("#","").split("");if(s.length<3||s.length===5||s.length>8)throw new Error("Invalid hex color: "+n);(s.length===3||s.length===4)&&(s=Array.prototype.concat.apply([],s.map(function(o){return[o,o]}))),s.length===6&&s.push("F","F");const r=parseInt(s.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+s.slice(0,6).join("")}}t.getOptions=function(s){s||(s={}),s.color||(s.color={});const r=typeof s.margin>"u"||s.margin===null||s.margin<0?4:s.margin,o=s.width&&s.width>=21?s.width:void 0,a=s.scale||4;return{width:o,scale:o?4:a,margin:r,color:{dark:e(s.color.dark||"#000000ff"),light:e(s.color.light||"#ffffffff")},type:s.type,rendererOpts:s.rendererOpts||{}}},t.getScale=function(s,r){return r.width&&r.width>=s+r.margin*2?r.width/(s+r.margin*2):r.scale},t.getImageWidth=function(s,r){const o=t.getScale(s,r);return Math.floor((s+r.margin*2)*o)},t.qrToImageData=function(s,r,o){const a=r.modules.size,l=r.modules.data,u=t.getScale(a,o),f=Math.floor((a+o.margin*2)*u),h=o.margin*u,p=[o.color.light,o.color.dark];for(let g=0;g=h&&_>=h&&g"u"&&(!a||!a.getContext)&&(u=a,a=void 0),a||(f=s()),u=e.getOptions(u);const h=e.getImageWidth(o.modules.size,u),p=f.getContext("2d"),g=p.createImageData(h,h);return e.qrToImageData(g.data,o,u),n(p,f,h),p.putImageData(g,0,0),f},t.renderToDataURL=function(o,a,l){let u=l;typeof u>"u"&&(!a||!a.getContext)&&(u=a,a=void 0),u||(u={});const f=t.render(o,a,u),h=u.type||"image/png",p=u.rendererOpts||{};return f.toDataURL(h,p.quality)}}(Ma)),Ma}var Ba={},ud;function uA(){if(ud)return Ba;ud=1;const t=xp();function e(r,o){const a=r.a/255,l=o+'="'+r.hex+'"';return a<1?l+" "+o+'-opacity="'+a.toFixed(2).slice(1)+'"':l}function n(r,o,a){let l=r+o;return typeof a<"u"&&(l+=" "+a),l}function s(r,o,a){let l="",u=0,f=!1,h=0;for(let p=0;p0&&g>0&&r[p-1]||(l+=f?n("M",g+a,.5+_+a):n("m",u,0),u=0,f=!1),g+1':"",_="',E='viewBox="0 0 '+p+" "+p+'"',H=''+g+_+` -`;return typeof l=="function"&&l(null,H),H},Ba}var fd;function fA(){if(fd)return Vs;fd=1;const t=KT(),e=lA(),n=cA(),s=uA();function r(o,a,l,u,f){const h=[].slice.call(arguments,1),p=h.length,g=typeof h[p-1]=="function";if(!g&&!t())throw new Error("Callback required as last argument");if(g){if(p<2)throw new Error("Too few arguments provided");p===2?(f=l,l=a,a=u=void 0):p===3&&(a.getContext&&typeof f>"u"?(f=u,u=void 0):(f=u,u=l,l=a,a=void 0))}else{if(p<1)throw new Error("Too few arguments provided");return p===1?(l=a,a=u=void 0):p===2&&!a.getContext&&(u=l,l=a,a=void 0),new Promise(function(_,E){try{const A=e.create(l,u);_(o(A,a,u))}catch(A){E(A)}})}try{const _=e.create(l,u);f(null,o(_,a,u))}catch(_){f(_)}}return Vs.create=e.create,Vs.toCanvas=r.bind(null,n.render),Vs.toDataURL=r.bind(null,n.renderToDataURL),Vs.toString=r.bind(null,function(o,a,l){return s.render(o,l)}),Vs}var dA=fA();const hA=Ll(dA),pA=["id"],Pp={__name:"qrcode",props:["content"],setup(t){const e=t,n=jh().toString();return Es(()=>{hA.toCanvas(document.getElementById(`qrcode_${n}`),e.content,function(s){})}),(s,r)=>(Tt(),Lt("div",null,[L("canvas",{id:"qrcode_"+an(n),class:"rounded-3"},null,8,pA)]))}},mA={class:"p-2 position-fixed top-0 start-0 vw-100 vh-100 d-flex qrcodeContainer p-3 overflow-scroll"},gA={class:"m-auto d-flex gap-3 flex-column p-3"},_A={__name:"configurationQRCode",props:["qrcodeData"],emits:["back"],setup(t,{emit:e}){const n=t,s=e;return(r,o)=>(Tt(),Lt("div",mA,[L("div",gA,[L("div",null,[L("a",{role:"button",onClick:o[0]||(o[0]=a=>s("back")),class:"btn btn-body rounded-3 btn-sm"},o[1]||(o[1]=[L("i",{class:"me-2 bi bi-x-lg"},null,-1),Yt(" Dismiss ")]))]),$t(Pp,{content:n.qrcodeData},null,8,["content"]),o[2]||(o[2]=L("button",{class:"btn bg-primary-subtle border-primary-subtle rounded-3"},[L("i",{class:"bi bi-download me-2"}),Yt("Download ")],-1))])]))}},bA=sr(_A,[["__scopeId","data-v-cc8c55c7"]]);var xi={exports:{}},vA=xi.exports,dd;function yA(){return dd||(dd=1,function(t,e){(function(n,s){t.exports=s()})(vA,function(){var n,s,r=1e3,o=6e4,a=36e5,l=864e5,u=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,f=31536e6,h=2628e6,p=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,g={years:f,months:h,days:l,hours:a,minutes:o,seconds:r,milliseconds:1,weeks:6048e5},_=function(O){return O instanceof U},E=function(O,R,w){return new U(O,w,R.$l)},A=function(O){return s.p(O)+"s"},H=function(O){return O<0},I=function(O){return H(O)?Math.ceil(O):Math.floor(O)},F=function(O){return Math.abs(O)},k=function(O,R){return O?H(O)?{negative:!0,format:""+F(O)+R}:{negative:!1,format:""+O+R}:{negative:!1,format:""}},U=function(){function O(w,S,D){var M=this;if(this.$d={},this.$l=D,w===void 0&&(this.$ms=0,this.parseFromMilliseconds()),S)return E(w*g[A(S)],this);if(typeof w=="number")return this.$ms=w,this.parseFromMilliseconds(),this;if(typeof w=="object")return Object.keys(w).forEach(function(j){M.$d[A(j)]=w[j]}),this.calMilliseconds(),this;if(typeof w=="string"){var P=w.match(p);if(P){var z=P.slice(2).map(function(j){return j!=null?Number(j):0});return this.$d.years=z[0],this.$d.months=z[1],this.$d.weeks=z[2],this.$d.days=z[3],this.$d.hours=z[4],this.$d.minutes=z[5],this.$d.seconds=z[6],this.calMilliseconds(),this}}return this}var R=O.prototype;return R.calMilliseconds=function(){var w=this;this.$ms=Object.keys(this.$d).reduce(function(S,D){return S+(w.$d[D]||0)*g[D]},0)},R.parseFromMilliseconds=function(){var w=this.$ms;this.$d.years=I(w/f),w%=f,this.$d.months=I(w/h),w%=h,this.$d.days=I(w/l),w%=l,this.$d.hours=I(w/a),w%=a,this.$d.minutes=I(w/o),w%=o,this.$d.seconds=I(w/r),w%=r,this.$d.milliseconds=w},R.toISOString=function(){var w=k(this.$d.years,"Y"),S=k(this.$d.months,"M"),D=+this.$d.days||0;this.$d.weeks&&(D+=7*this.$d.weeks);var M=k(D,"D"),P=k(this.$d.hours,"H"),z=k(this.$d.minutes,"M"),j=this.$d.seconds||0;this.$d.milliseconds&&(j+=this.$d.milliseconds/1e3,j=Math.round(1e3*j)/1e3);var X=k(j,"S"),Y=w.negative||S.negative||M.negative||P.negative||z.negative||X.negative,Q=P.format||z.format||X.format?"T":"",J=(Y?"-":"")+"P"+w.format+S.format+M.format+Q+P.format+z.format+X.format;return J==="P"||J==="-P"?"P0D":J},R.toJSON=function(){return this.toISOString()},R.format=function(w){var S=w||"YYYY-MM-DDTHH:mm:ss",D={Y:this.$d.years,YY:s.s(this.$d.years,2,"0"),YYYY:s.s(this.$d.years,4,"0"),M:this.$d.months,MM:s.s(this.$d.months,2,"0"),D:this.$d.days,DD:s.s(this.$d.days,2,"0"),H:this.$d.hours,HH:s.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:s.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:s.s(this.$d.seconds,2,"0"),SSS:s.s(this.$d.milliseconds,3,"0")};return S.replace(u,function(M,P){return P||String(D[M])})},R.as=function(w){return this.$ms/g[A(w)]},R.get=function(w){var S=this.$ms,D=A(w);return D==="milliseconds"?S%=1e3:S=D==="weeks"?I(S/g[D]):this.$d[D],S||0},R.add=function(w,S,D){var M;return M=S?w*g[A(S)]:_(w)?w.$ms:E(w,this).$ms,E(this.$ms+M*(D?-1:1),this)},R.subtract=function(w,S){return this.add(w,S,!0)},R.locale=function(w){var S=this.clone();return S.$l=w,S},R.clone=function(){return E(this.$ms,this)},R.humanize=function(w){return n().add(this.$ms,"ms").locale(this.$l).fromNow(!w)},R.valueOf=function(){return this.asMilliseconds()},R.milliseconds=function(){return this.get("milliseconds")},R.asMilliseconds=function(){return this.as("milliseconds")},R.seconds=function(){return this.get("seconds")},R.asSeconds=function(){return this.as("seconds")},R.minutes=function(){return this.get("minutes")},R.asMinutes=function(){return this.as("minutes")},R.hours=function(){return this.get("hours")},R.asHours=function(){return this.as("hours")},R.days=function(){return this.get("days")},R.asDays=function(){return this.as("days")},R.weeks=function(){return this.get("weeks")},R.asWeeks=function(){return this.as("weeks")},R.months=function(){return this.get("months")},R.asMonths=function(){return this.as("months")},R.years=function(){return this.get("years")},R.asYears=function(){return this.as("years")},O}(),q=function(O,R,w){return O.add(R.years()*w,"y").add(R.months()*w,"M").add(R.days()*w,"d").add(R.hours()*w,"h").add(R.minutes()*w,"m").add(R.seconds()*w,"s").add(R.milliseconds()*w,"ms")};return function(O,R,w){n=w,s=w().$utils(),w.duration=function(M,P){var z=w.locale();return E(M,{$l:z},P)},w.isDuration=_;var S=R.prototype.add,D=R.prototype.subtract;R.prototype.add=function(M,P){return _(M)?q(this,M,1):S.bind(this)(M,P)},R.prototype.subtract=function(M,P){return _(M)?q(this,M,-1):D.bind(this)(M,P)}}})}(xi)),xi.exports}var EA=yA();const wA=Ll(EA),TA={class:"card rounded-3 border shadow"},AA={class:"card-header border-0 align-items-center d-flex p-3 flex-column flex-sm-row gap-2"},SA={class:"fw-bold"},CA={class:"card-body p-3 d-flex gap-3 flex-column"},OA={class:"mb-1 d-flex align-items-center"},RA={class:"fw-bold ms-sm-auto"},NA={class:"progress",role:"progressbar","aria-valuenow":"25","aria-valuemin":"0","aria-valuemax":"100",style:{height:"6px"}},$A={class:"mb-1 d-flex align-items-center"},xA={class:"fw-bold ms-auto"},PA={__name:"configuration",props:["config"],setup(t){yr.extend(wA);const e=t,n=Ae(!1),s=zt(()=>e.config.jobs.filter(u=>u.Field==="date").sort((u,f)=>yr(u.Value).isBefore(f.Value)?-1:yr(u.Value).isAfter(f.Value)?1:0)),r=zt(()=>e.config.jobs.filter(u=>u.Field==="total_data").sort((u,f)=>parseFloat(f.Value)-parseFloat(u.Value))),o=zt(()=>{if(s.value.length>0)return s.value[0].Value}),a=zt(()=>{if(r.value.length>0)return r.value[0].Value}),l=zt(()=>a.value?e.config.data/a.value*100:100);return window.dayjs=yr,(u,f)=>(Tt(),Lt("div",TA,[L("div",AA,[L("small",SA,Be(e.config.name),1),e.config.protocol==="wg"?(Tt(),Lt("span",{key:0,class:yn(["badge rounded-3 shadow ms-sm-auto",[e.config.protocol==="wg"?"wireguardBg":"amneziawgBg"]])},Be(e.config.protocol==="wg"?"WireGuard":"AmneziaWG"),3)):Mr("",!0)]),L("div",CA,[L("div",null,[L("div",OA,[f[2]||(f[2]=L("small",{class:"text-muted"},[L("i",{class:"bi bi-bar-chart-fill me-1"}),Yt(" Data Usage ")],-1)),L("small",RA,Be(e.config.data.toFixed(4))+" / "+Be(a.value?parseFloat(a.value).toFixed(4):"Unlimited")+" GB ",1)]),L("div",NA,[L("div",{class:"progress-bar bg-primary",style:Gi({width:""+l.value+"%"})},null,4)])]),L("div",null,[L("div",$A,[f[3]||(f[3]=L("small",{class:"text-muted"},[L("i",{class:"bi bi-calendar me-1"}),Yt(" Valid Until ")],-1)),L("small",xA,Be(o.value?o.value:"Unlimited Time"),1)])]),L("button",{class:"btn btn-outline-body rounded-3 flex-grow-1 fw-bold w-100",onClick:f[0]||(f[0]=h=>n.value=!0)},f[4]||(f[4]=[L("i",{class:"bi bi-link-45deg me-2"},null,-1),L("small",null,"Connect",-1)]))]),$t(so,{name:"app"},{default:De(()=>[n.value?(Tt(),jn(bA,{key:0,onBack:f[1]||(f[1]=h=>n.value=!1),"qrcode-data":t.config.peer_configuration_data.file},null,8,["qrcode-data"])):Mr("",!0)]),_:1})]))}},DA=sr(PA,[["__scopeId","data-v-5ea45ad6"]]),LA={class:"p-sm-3"},IA={class:"w-100 d-flex align-items-center"},MA={class:"ms-auto px-3 d-flex gap-2 nav-links"},kA={key:0,class:"d-flex flex-column gap-3"},BA={class:"p-3 d-flex flex-column gap-3"},FA={key:1,class:"d-flex py-4"},HA={__name:"index",setup(t){const e=un(),n=Ae(!0),s=zt(()=>e.configurations);return Es(async()=>{await e.getConfigurations(),n.value=!1,setInterval(async()=>{await e.getConfigurations()},5e3)}),(r,o)=>{const a=qr("RouterLink");return Tt(),Lt("div",LA,[L("div",IA,[o[2]||(o[2]=L("a",{class:"nav-link text-body border-start-0","aria-current":"page",href:"#"},[L("strong",null,"WGDashboard Client")],-1)),L("div",MA,[$t(a,{to:"/settings",class:"text-body btn btn-outline-body rounded-3 ms-auto btn-sm","aria-current":"page",href:"#"},{default:De(()=>o[0]||(o[0]=[L("i",{class:"bi bi-gear-fill me-sm-2"},null,-1),L("span",null,"Settings",-1)])),_:1,__:[0]}),$t(a,{to:"/signout",class:"btn btn-outline-danger rounded-3 btn-sm","aria-current":"page"},{default:De(()=>o[1]||(o[1]=[L("i",{class:"bi bi-box-arrow-left me-sm-2"},null,-1),L("span",null,"Sign Out",-1)])),_:1,__:[1]})])]),$t(so,{name:"app",mode:"out-in"},{default:De(()=>[n.value?(Tt(),Lt("div",FA,o[3]||(o[3]=[L("div",{class:"spinner-border m-auto"},null,-1)]))):(Tt(),Lt("div",kA,[L("div",BA,[(Tt(!0),Lt(we,null,Ol(s.value,l=>(Tt(),jn(DA,{config:l},null,8,["config"]))),256))])]))]),_:1})])}}},VA=sr(HA,[["__scopeId","data-v-1e519584"]]),UA={class:"form-floating"},jA=["disabled"],qA={class:"form-floating"},KA=["disabled"],WA=["disabled"],YA={key:0,class:"d-block"},zA={key:1,class:"d-block"},GA={class:"d-flex align-items-center"},JA={__name:"signInForm",emits:["totpToken"],setup(t,{emit:e}){const n=Ae(!1),s=An({Email:"",Password:""}),r=e;Ae("");const o=un(),a=async f=>{if(f.preventDefault(),!l){o.newNotification("Please fill in all fields","warning");return}n.value=!0;const h=await Bl("/api/signin",s);h.status?r("totpToken",h.message):(o.newNotification(h.message,"danger"),n.value=!1)},l=zt(()=>Object.values(s).find(f=>!f)===void 0),u=qT();return u.query.Email&&(s.Email=u.query.Email),(f,h)=>{const p=qr("RouterLink");return Tt(),Lt("div",null,[h[10]||(h[10]=L("div",{class:"text-center"},[L("h1",{class:"display-4"},"Welcome back"),L("p",{class:"text-muted"},[Yt("Sign in to access your "),L("strong",null,"WGDashboard Client"),Yt(" account")])],-1)),L("form",{class:"mt-4 d-flex flex-column gap-3",onSubmit:h[2]||(h[2]=g=>a(g))},[L("div",UA,[ln(L("input",{type:"text",required:"",disabled:n.value,"onUpdate:modelValue":h[0]||(h[0]=g=>s.Email=g),name:"email",autocomplete:"email",autofocus:"",class:"form-control rounded-3 border-0",id:"email",placeholder:"email"},null,8,jA),[[En,s.Email]]),h[3]||(h[3]=L("label",{for:"email",class:"d-flex"},[L("i",{class:"bi bi-person-circle me-2"}),Yt(" Email ")],-1))]),L("div",qA,[ln(L("input",{type:"password",required:"",disabled:n.value,"onUpdate:modelValue":h[1]||(h[1]=g=>s.Password=g),name:"password",autocomplete:"current-password",class:"form-control rounded-3 border-0",id:"password",placeholder:"Password"},null,8,KA),[[En,s.Password]]),h[4]||(h[4]=L("label",{for:"password",class:"d-flex"},[L("i",{class:"bi bi-key me-2"}),Yt(" Password ")],-1))]),h[6]||(h[6]=L("div",{class:"d-flex"},[L("a",{href:"#",class:"text-body text-decoration-none ms-auto btn btn-sm rounded-3"}," Forgot Password? ")],-1)),L("button",{disabled:!l.value||n.value,class:"btn btn-primary rounded-3 btn-body px-3 py-2 fw-bold"},[n.value?(Tt(),Lt("span",zA,h[5]||(h[5]=[Yt(" Loading..."),L("i",{class:"ms-2 spinner-border spinner-border-sm"},null,-1)]))):(Tt(),Lt("span",YA," Sign In "))],8,WA)],32),L("div",null,[h[9]||(h[9]=L("hr",{class:"my-4"},null,-1)),L("div",GA,[h[8]||(h[8]=L("span",{class:"text-muted"}," Don't have an account yet? ",-1)),$t(p,{to:"/signup",class:"text-body text-decoration-none ms-auto fw-bold btn btn-sm btn-outline-body rounded-3"},{default:De(()=>h[7]||(h[7]=[Yt(" Sign Up ")])),_:1,__:[7]})])])])}}},QA={class:""},XA={key:0,class:"card rounded-3"},ZA={class:"card-body d-flex gap-3 flex-column"},t1={class:"card rounded-3"},e1={class:"card-body"},n1=["href"],s1={key:0},r1={class:"d-flex flex-column gap-3"},i1=["disabled"],o1=["disabled"],a1={key:0,class:"d-block"},l1={key:1,class:"d-block"},c1={__name:"totpForm",props:["totpToken"],emits:["clearToken"],setup(t,{emit:e}){const n=t,s=Ae(""),r=An({TOTP:""}),o=Ae(!0),a=()=>{r.TOTP=r.TOTP.replace(/\D/i,"")},l=zt(()=>/^[0-9]{6}$/.test(r.TOTP)),u=un(),f=Op();Es(()=>{Kt.get(Yr("/api/signin/totp"),{params:{Token:n.totpToken}}).then(g=>{let _=g.data;o.value=!1,_.status?_.message&&(s.value=_.message):(u.newNotification(_.message,"danger"),f.push("/signin"))})});const h=e,p=async g=>{if(g&&g.preventDefault(),l){o.value=!0;const _=await Bl("/api/signin/totp",{Token:n.totpToken,UserProvidedTOTP:r.TOTP});o.value=!1,_?_.status?(u.clientProfile=_.data,f.push("/")):u.newNotification(_.message,"danger"):(u.newNotification("Sign in status is invalid","danger"),h("clearToken"))}};return Ys(l,()=>{p()}),(g,_)=>(Tt(),Lt("form",{class:"d-flex flex-column gap-3",onSubmit:_[3]||(_[3]=E=>p(E))},[L("div",null,[L("a",{role:"button",onClick:_[0]||(_[0]=E=>h("clearToken")),class:"btn btn-outline-body btn-sm rounded-3"},_[4]||(_[4]=[L("i",{class:"me-2 bi bi-chevron-left"},null,-1),Yt(" Back ")]))]),L("div",QA,[_[9]||(_[9]=L("h1",{class:"mb-3"},"Multi-Factor Authentication (MFA)",-1)),s.value?(Tt(),Lt("div",XA,[L("div",ZA,[_[5]||(_[5]=L("h2",{class:"mb-0"},"Initial Setup",-1)),_[6]||(_[6]=L("p",{class:"mb-0"},"Please scan the following QR Code to generate TOTP with your choice of authenticator",-1)),$t(Pp,{content:s.value},null,8,["content"]),_[7]||(_[7]=L("p",{class:"mb-0"},"Or you can click the link below:",-1)),L("div",t1,[L("div",e1,[L("a",{href:s.value},Be(s.value),9,n1)])]),_[8]||(_[8]=L("div",{class:"alert alert-warning mb-0"},[L("strong",null," Please note: You won't be able to see this QR Code again, so please save it somewhere safe in case you need to recover your TOTP key ")],-1))])])):Mr("",!0)]),s.value?(Tt(),Lt("hr",s1)):Mr("",!0),L("div",r1,[_[12]||(_[12]=L("label",{for:"totp"},"Enter the TOTP generated by your authenticator to verify",-1)),ln(L("input",{class:"form-control form-control-lg rounded-3 text-center",id:"totp",disabled:o.value,autofocus:"",onKeyup:_[1]||(_[1]=E=>a()),maxlength:"6",type:"text",inputmode:"numeric",placeholder:"- - - - - -",autocomplete:"one-time-code","onUpdate:modelValue":_[2]||(_[2]=E=>r.TOTP=E)},null,40,i1),[[En,r.TOTP]]),L("button",{disabled:!l.value||o.value,class:"btn btn-body rounded-3 px-3 py-2 fw-bold"},[o.value?(Tt(),Lt("span",l1,_[11]||(_[11]=[Yt(" Loading... "),L("i",{class:"ms-2 spinner-border spinner-border-sm"},null,-1)]))):(Tt(),Lt("span",a1,_[10]||(_[10]=[Yt(" Continue "),L("i",{class:"ms-2 bi bi-arrow-right"},null,-1)])))],8,o1)])],32))}},u1={class:"p-3 p-sm-5"},f1={__name:"signin",setup(t){const e=Ae("");return(n,s)=>(Tt(),Lt("div",u1,[$t(so,{name:"app",mode:"out-in"},{default:De(()=>[e.value?(Tt(),jn(c1,{key:1,onClearToken:s[1]||(s[1]=r=>e.value=""),"totp-token":e.value},null,8,["totp-token"])):(Tt(),jn(JA,{key:0,onTotpToken:s[0]||(s[0]=r=>{e.value=r})}))]),_:1})]))}},d1={class:"p-3 p-sm-5"},h1={class:"form-floating"},p1=["disabled"],m1={class:"row gx-3"},g1={class:"col-6"},_1={class:"form-floating"},b1=["disabled"],v1={class:"col-6"},y1={class:"form-floating"},E1=["disabled"],w1=["disabled"],T1={key:0,class:"d-block"},A1={key:1,class:"d-block"},S1={class:"d-flex align-items-center"},C1={__name:"signup",setup(t){const e=un(),n=An({Email:"",Password:"",ConfirmPassword:""}),s=Ae(!1),r=Op(),o=async u=>{if(u.preventDefault(),!l){e.newNotification("Please fill in all fields","warning");return}a&&(s.value=!0,await Kt.post(Yr("/api/signup"),n).then(f=>{let h=f.data;h.status?(e.newNotification("Sign up successfully!","success"),r.push({path:"/signin",query:{Email:n.Email}})):(e.newNotification(h.message,"danger"),s.value=!1)}))},a=zt(()=>n.Password&&n.ConfirmPassword?n.Password===n.ConfirmPassword:!1),l=zt(()=>Object.values(n).find(u=>!u)===void 0);return Es(()=>{document.querySelectorAll("input[type=password]").forEach(u=>u.addEventListener("blur",()=>{n.Password&&n.ConfirmPassword&&document.querySelectorAll("input[type=password]").forEach(f=>{a.value?f.classList.remove("is-invalid"):f.classList.add("is-invalid")})}))}),(u,f)=>{const h=qr("RouterLink");return Tt(),Lt("div",d1,[f[13]||(f[13]=L("div",{class:"text-center"},[L("h1",{class:"display-4"},"Hi, nice to meet you"),L("p",{class:"text-muted"},[Yt("Sign up to use "),L("strong",null,"WGDashboard Client")])],-1)),L("form",{class:"mt-4 d-flex flex-column gap-3",onSubmit:f[3]||(f[3]=p=>o(p))},[L("div",h1,[ln(L("input",{type:"text",disabled:s.value,required:"","onUpdate:modelValue":f[0]||(f[0]=p=>n.Email=p),name:"email",autocomplete:"email",autofocus:"",class:"form-control rounded-3",id:"email",placeholder:"email"},null,8,p1),[[En,n.Email]]),f[4]||(f[4]=L("label",{for:"email",class:"d-flex"},[L("i",{class:"bi bi-person-circle me-2"}),Yt(" Email ")],-1))]),L("div",m1,[L("div",g1,[L("div",_1,[ln(L("input",{type:"password",required:"",disabled:s.value,"onUpdate:modelValue":f[1]||(f[1]=p=>n.Password=p),name:"password",autocomplete:"new-password",autofocus:"",class:"form-control rounded-3",id:"password",placeholder:"password"},null,8,b1),[[En,n.Password]]),f[5]||(f[5]=L("label",{for:"password",class:"d-flex"},[L("i",{class:"bi bi-key me-2"}),Yt(" Password ")],-1))])]),L("div",v1,[L("div",y1,[ln(L("input",{type:"password",required:"",disabled:s.value,"onUpdate:modelValue":f[2]||(f[2]=p=>n.ConfirmPassword=p),name:"confirm_password",autocomplete:"new-password",autofocus:"",class:"form-control rounded-3",id:"confirm_password",placeholder:"confirm_password"},null,8,E1),[[En,n.ConfirmPassword]]),f[6]||(f[6]=L("label",{for:"confirm_password",class:"d-flex"},[L("i",{class:"bi bi-key me-2"}),Yt(" Confirm Password ")],-1)),f[7]||(f[7]=L("div",{id:"validationServer03Feedback",class:"invalid-feedback"}," Passwords does not match ",-1))])])]),L("button",{disabled:!l.value||!a.value||s.value,class:"btn btn-primary rounded-3 btn-body px-3 py-2 fw-bold"},[s.value?(Tt(),Lt("span",A1,f[9]||(f[9]=[Yt(" Loading... "),L("i",{class:"spinner-border spinner-border-sm"},null,-1)]))):(Tt(),Lt("span",T1,f[8]||(f[8]=[Yt(" Continue "),L("i",{class:"ms-2 bi bi-arrow-right"},null,-1)])))],8,w1)],32),L("div",null,[f[12]||(f[12]=L("hr",{class:"my-4"},null,-1)),L("div",S1,[f[11]||(f[11]=L("span",{class:"text-muted"}," Already have an account? ",-1)),$t(h,{to:"/signin",class:"text-body text-decoration-none ms-auto fw-bold btn btn-sm btn-outline-body rounded-3"},{default:De(()=>f[10]||(f[10]=[Yt(" Sign In ")])),_:1,__:[10]})])])])}}},O1={class:"p-3"},R1={class:"row g-2"},N1={class:"col-sm-6"},$1=["for"],x1=["id","onUpdate:modelValue"],P1={__name:"profile",setup(t){const e=un(),n={Firstname:"First Name",Lastname:"Last Name"};return(s,r)=>(Tt(),Lt("div",O1,[r[0]||(r[0]=L("h5",null," Profile ",-1)),L("div",R1,[(Tt(!0),Lt(we,null,Ol(an(e).clientProfile.Profile,(o,a)=>(Tt(),Lt("div",N1,[L("label",{for:a,class:"text-muted form-label"},[L("small",null,Be(n[a]),1)],8,$1),ln(L("input",{id:a,class:"form-control rounded-3","onUpdate:modelValue":l=>an(e).clientProfile.Profile[a]=l},null,8,x1),[[En,an(e).clientProfile.Profile[a]]])]))),256))])]))}},D1={class:"d-flex align-items-start"},L1={key:0,class:"alert alert-danger rounded-3 mt-3"},I1={class:"row g-2 mb-3"},M1={class:"col-sm-12"},k1=["type"],B1={class:"col-sm-6"},F1=["type"],H1={class:"col-sm-6"},V1=["type"],U1={__name:"updatePassword",setup(t){const e=An({CurrentPassword:"",NewPassword:"",ConfirmNewPassword:""}),n=()=>{e.CurrentPassword="",e.NewPassword="",e.ConfirmNewPassword=""},s=un(),r=async u=>{u.preventDefault(),document.querySelectorAll("#updatePasswordForm input").forEach(h=>h.blur());const f=await Bl("/api/settings/updatePassword",e);f?f.status?(a.value=!1,s.newNotification("Password updated!","success"),n()):(a.value=!0,l.value=f.message):(a.value=!0,l.value="Error occurred")},o=Ae(!1),a=Ae(!1),l=Ae("");return(u,f)=>(Tt(),Lt("form",{onSubmit:f[4]||(f[4]=h=>r(h)),id:"updatePasswordForm",onReset:f[5]||(f[5]=h=>n()),class:"p-3"},[L("div",D1,[f[6]||(f[6]=L("h5",null," Update Password ",-1)),L("a",{role:"button",onClick:f[0]||(f[0]=h=>o.value=!o.value),class:"text-muted ms-auto text-decoration-none"},[L("small",null,[L("i",{class:yn([[o.value?"bi-eye-slash-fill":"bi-eye-fill"],"bi me-2"])},null,2),Yt(Be(o.value?"Hide":"Show")+" Password ",1)])])]),a.value?(Tt(),Lt("div",L1,Be(l.value),1)):Mr("",!0),L("div",I1,[L("div",M1,[f[7]||(f[7]=L("label",{class:"text-muted form-label",for:"CurrentPassword"},[L("small",null,"Current Password")],-1)),ln(L("input",{class:yn(["form-control rounded-3",{"is-invalid":a.value}]),required:"",type:o.value?"text":"password",autocomplete:"current-password",id:"CurrentPassword","onUpdate:modelValue":f[1]||(f[1]=h=>e.CurrentPassword=h)},null,10,k1),[[aa,e.CurrentPassword]])]),L("div",B1,[f[8]||(f[8]=L("label",{class:"text-muted form-label",for:"NewPassword"},[L("small",null,"New Password")],-1)),ln(L("input",{class:yn(["form-control rounded-3",{"is-invalid":a.value}]),required:"",type:o.value?"text":"password",id:"NewPassword",autocomplete:"new-password","onUpdate:modelValue":f[2]||(f[2]=h=>e.NewPassword=h)},null,10,F1),[[aa,e.NewPassword]])]),L("div",H1,[f[9]||(f[9]=L("label",{class:"text-muted form-label",for:"ConfirmNewPassword"},[L("small",null,"Confirm New Password")],-1)),ln(L("input",{class:yn(["form-control rounded-3",{"is-invalid":a.value}]),required:"",type:o.value?"text":"password",id:"ConfirmNewPassword",autocomplete:"new-password","onUpdate:modelValue":f[3]||(f[3]=h=>e.ConfirmNewPassword=h)},null,10,V1),[[aa,e.ConfirmNewPassword]])])]),f[10]||(f[10]=L("div",{class:"d-flex gap-2"},[L("button",{class:"btn btn-sm btn-secondary rounded-3 ms-auto",type:"reset"},"Clear"),L("button",{class:"btn btn-sm btn-danger rounded-3",type:"submit"},"Update")],-1))],32))}},j1={class:"p-sm-3"},q1={class:"w-100 d-flex align-items-center p-3"},K1={__name:"settings",async setup(t){let e,n;const s=un();return[e,n]=sy(()=>s.getClientProfile()),await e,n(),(r,o)=>{const a=qr("RouterLink");return Tt(),Lt("div",j1,[L("div",q1,[$t(a,{to:"/",class:"text-body btn btn-outline-body rounded-3 btn-sm","aria-current":"page",href:"#"},{default:De(()=>o[0]||(o[0]=[L("i",{class:"bi bi-chevron-left me-sm-2"},null,-1),L("span",null,"Back",-1)])),_:1,__:[0]}),o[1]||(o[1]=L("strong",{class:"ms-auto"},"Settings",-1))]),$t(P1),$t(U1)])}}},Ul=UT({history:_T(),routes:[{path:"/",component:VA,meta:{auth:!0},name:"Home"},{path:"/settings",component:K1,meta:{auth:!0},name:"Settings"},{path:"/signin",component:f1,name:"Sign In"},{path:"/signup",component:C1,name:"Sign Up"},{path:"/signout",name:"Sign Out"}]});Ul.beforeEach(async(t,e,n)=>{const s=un();t.path==="/signout"?(await Kt.get(Yr("/api/signout")).then(()=>{n("/signin")}).catch(()=>{n("/signin")}),s.newNotification("Sign in session ended, please sign in again","warning")):t.meta.auth?await al("/api/validateAuthentication")?n():(s.newNotification("Sign in session ended, please sign in again","warning"),n("/signin")):n()});Ul.afterEach((t,e,n)=>{document.title=t.name+" | WGDashboard Client"});var Pi={exports:{}};/*! - * Bootstrap v5.3.6 (https://getbootstrap.com/) - * Copyright 2011-2025 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - */var W1=Pi.exports,hd;function Y1(){return hd||(hd=1,function(t,e){(function(n,s){t.exports=s()})(W1,function(){const n=new Map,s={set(d,i,c){n.has(d)||n.set(d,new Map);const m=n.get(d);if(!m.has(i)&&m.size!==0){console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(m.keys())[0]}.`);return}m.set(i,c)},get(d,i){return n.has(d)&&n.get(d).get(i)||null},remove(d,i){if(!n.has(d))return;const c=n.get(d);c.delete(i),c.size===0&&n.delete(d)}},r=1e6,o=1e3,a="transitionend",l=d=>(d&&window.CSS&&window.CSS.escape&&(d=d.replace(/#([^\s"#']+)/g,(i,c)=>`#${CSS.escape(c)}`)),d),u=d=>d==null?`${d}`:Object.prototype.toString.call(d).match(/\s([a-z]+)/i)[1].toLowerCase(),f=d=>{do d+=Math.floor(Math.random()*r);while(document.getElementById(d));return d},h=d=>{if(!d)return 0;let{transitionDuration:i,transitionDelay:c}=window.getComputedStyle(d);const m=Number.parseFloat(i),y=Number.parseFloat(c);return!m&&!y?0:(i=i.split(",")[0],c=c.split(",")[0],(Number.parseFloat(i)+Number.parseFloat(c))*o)},p=d=>{d.dispatchEvent(new Event(a))},g=d=>!d||typeof d!="object"?!1:(typeof d.jquery<"u"&&(d=d[0]),typeof d.nodeType<"u"),_=d=>g(d)?d.jquery?d[0]:d:typeof d=="string"&&d.length>0?document.querySelector(l(d)):null,E=d=>{if(!g(d)||d.getClientRects().length===0)return!1;const i=getComputedStyle(d).getPropertyValue("visibility")==="visible",c=d.closest("details:not([open])");if(!c)return i;if(c!==d){const m=d.closest("summary");if(m&&m.parentNode!==c||m===null)return!1}return i},A=d=>!d||d.nodeType!==Node.ELEMENT_NODE||d.classList.contains("disabled")?!0:typeof d.disabled<"u"?d.disabled:d.hasAttribute("disabled")&&d.getAttribute("disabled")!=="false",H=d=>{if(!document.documentElement.attachShadow)return null;if(typeof d.getRootNode=="function"){const i=d.getRootNode();return i instanceof ShadowRoot?i:null}return d instanceof ShadowRoot?d:d.parentNode?H(d.parentNode):null},I=()=>{},F=d=>{d.offsetHeight},k=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,U=[],q=d=>{document.readyState==="loading"?(U.length||document.addEventListener("DOMContentLoaded",()=>{for(const i of U)i()}),U.push(d)):d()},O=()=>document.documentElement.dir==="rtl",R=d=>{q(()=>{const i=k();if(i){const c=d.NAME,m=i.fn[c];i.fn[c]=d.jQueryInterface,i.fn[c].Constructor=d,i.fn[c].noConflict=()=>(i.fn[c]=m,d.jQueryInterface)}})},w=(d,i=[],c=d)=>typeof d=="function"?d.call(...i):c,S=(d,i,c=!0)=>{if(!c){w(d);return}const y=h(i)+5;let $=!1;const x=({target:W})=>{W===i&&($=!0,i.removeEventListener(a,x),w(d))};i.addEventListener(a,x),setTimeout(()=>{$||p(i)},y)},D=(d,i,c,m)=>{const y=d.length;let $=d.indexOf(i);return $===-1?!c&&m?d[y-1]:d[0]:($+=c?1:-1,m&&($=($+y)%y),d[Math.max(0,Math.min($,y-1))])},M=/[^.]*(?=\..*)\.|.*/,P=/\..*/,z=/::\d+$/,j={};let X=1;const Y={mouseenter:"mouseover",mouseleave:"mouseout"},Q=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function J(d,i){return i&&`${i}::${X++}`||d.uidEvent||X++}function ct(d){const i=J(d);return d.uidEvent=i,j[i]=j[i]||{},j[i]}function ut(d,i){return function c(m){return et(m,{delegateTarget:d}),c.oneOff&&T.off(d,m.type,i),i.apply(d,[m])}}function gt(d,i,c){return function m(y){const $=d.querySelectorAll(i);for(let{target:x}=y;x&&x!==this;x=x.parentNode)for(const W of $)if(W===x)return et(y,{delegateTarget:x}),m.oneOff&&T.off(d,y.type,i,c),c.apply(x,[y])}}function bt(d,i,c=null){return Object.values(d).find(m=>m.callable===i&&m.delegationSelector===c)}function Rt(d,i,c){const m=typeof i=="string",y=m?c:i||c;let $=V(d);return Q.has($)||($=d),[m,y,$]}function It(d,i,c,m,y){if(typeof i!="string"||!d)return;let[$,x,W]=Rt(i,c,m);i in Y&&(x=(Vt=>function(St){if(!St.relatedTarget||St.relatedTarget!==St.delegateTarget&&!St.delegateTarget.contains(St.relatedTarget))return Vt.call(this,St)})(x));const tt=ct(d),lt=tt[W]||(tt[W]={}),nt=bt(lt,x,$?c:null);if(nt){nt.oneOff=nt.oneOff&&y;return}const wt=J(x,i.replace(M,"")),At=$?gt(d,c,x):ut(d,x);At.delegationSelector=$?c:null,At.callable=x,At.oneOff=y,At.uidEvent=wt,lt[wt]=At,d.addEventListener(W,At,$)}function jt(d,i,c,m,y){const $=bt(i[c],m,y);$&&(d.removeEventListener(c,$,!!y),delete i[c][$.uidEvent])}function Wt(d,i,c,m){const y=i[c]||{};for(const[$,x]of Object.entries(y))$.includes(m)&&jt(d,i,c,x.callable,x.delegationSelector)}function V(d){return d=d.replace(P,""),Y[d]||d}const T={on(d,i,c,m){It(d,i,c,m,!1)},one(d,i,c,m){It(d,i,c,m,!0)},off(d,i,c,m){if(typeof i!="string"||!d)return;const[y,$,x]=Rt(i,c,m),W=x!==i,tt=ct(d),lt=tt[x]||{},nt=i.startsWith(".");if(typeof $<"u"){if(!Object.keys(lt).length)return;jt(d,tt,x,$,y?c:null);return}if(nt)for(const wt of Object.keys(tt))Wt(d,tt,wt,i.slice(1));for(const[wt,At]of Object.entries(lt)){const _t=wt.replace(z,"");(!W||i.includes(_t))&&jt(d,tt,x,At.callable,At.delegationSelector)}},trigger(d,i,c){if(typeof i!="string"||!d)return null;const m=k(),y=V(i),$=i!==y;let x=null,W=!0,tt=!0,lt=!1;$&&m&&(x=m.Event(i,c),m(d).trigger(x),W=!x.isPropagationStopped(),tt=!x.isImmediatePropagationStopped(),lt=x.isDefaultPrevented());const nt=et(new Event(i,{bubbles:W,cancelable:!0}),c);return lt&&nt.preventDefault(),tt&&d.dispatchEvent(nt),nt.defaultPrevented&&x&&x.preventDefault(),nt}};function et(d,i={}){for(const[c,m]of Object.entries(i))try{d[c]=m}catch{Object.defineProperty(d,c,{configurable:!0,get(){return m}})}return d}function it(d){if(d==="true")return!0;if(d==="false")return!1;if(d===Number(d).toString())return Number(d);if(d===""||d==="null")return null;if(typeof d!="string")return d;try{return JSON.parse(decodeURIComponent(d))}catch{return d}}function yt(d){return d.replace(/[A-Z]/g,i=>`-${i.toLowerCase()}`)}const b={setDataAttribute(d,i,c){d.setAttribute(`data-bs-${yt(i)}`,c)},removeDataAttribute(d,i){d.removeAttribute(`data-bs-${yt(i)}`)},getDataAttributes(d){if(!d)return{};const i={},c=Object.keys(d.dataset).filter(m=>m.startsWith("bs")&&!m.startsWith("bsConfig"));for(const m of c){let y=m.replace(/^bs/,"");y=y.charAt(0).toLowerCase()+y.slice(1),i[y]=it(d.dataset[m])}return i},getDataAttribute(d,i){return it(d.getAttribute(`data-bs-${yt(i)}`))}};class v{static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(i){return i=this._mergeConfigObj(i),i=this._configAfterMerge(i),this._typeCheckConfig(i),i}_configAfterMerge(i){return i}_mergeConfigObj(i,c){const m=g(c)?b.getDataAttribute(c,"config"):{};return{...this.constructor.Default,...typeof m=="object"?m:{},...g(c)?b.getDataAttributes(c):{},...typeof i=="object"?i:{}}}_typeCheckConfig(i,c=this.constructor.DefaultType){for(const[m,y]of Object.entries(c)){const $=i[m],x=g($)?"element":u($);if(!new RegExp(y).test(x))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${m}" provided type "${x}" but expected type "${y}".`)}}}const C="5.3.6";class K extends v{constructor(i,c){super(),i=_(i),i&&(this._element=i,this._config=this._getConfig(c),s.set(this._element,this.constructor.DATA_KEY,this))}dispose(){s.remove(this._element,this.constructor.DATA_KEY),T.off(this._element,this.constructor.EVENT_KEY);for(const i of Object.getOwnPropertyNames(this))this[i]=null}_queueCallback(i,c,m=!0){S(i,c,m)}_getConfig(i){return i=this._mergeConfigObj(i,this._element),i=this._configAfterMerge(i),this._typeCheckConfig(i),i}static getInstance(i){return s.get(_(i),this.DATA_KEY)}static getOrCreateInstance(i,c={}){return this.getInstance(i)||new this(i,typeof c=="object"?c:null)}static get VERSION(){return C}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(i){return`${i}${this.EVENT_KEY}`}}const G=d=>{let i=d.getAttribute("data-bs-target");if(!i||i==="#"){let c=d.getAttribute("href");if(!c||!c.includes("#")&&!c.startsWith("."))return null;c.includes("#")&&!c.startsWith("#")&&(c=`#${c.split("#")[1]}`),i=c&&c!=="#"?c.trim():null}return i?i.split(",").map(c=>l(c)).join(","):null},N={find(d,i=document.documentElement){return[].concat(...Element.prototype.querySelectorAll.call(i,d))},findOne(d,i=document.documentElement){return Element.prototype.querySelector.call(i,d)},children(d,i){return[].concat(...d.children).filter(c=>c.matches(i))},parents(d,i){const c=[];let m=d.parentNode.closest(i);for(;m;)c.push(m),m=m.parentNode.closest(i);return c},prev(d,i){let c=d.previousElementSibling;for(;c;){if(c.matches(i))return[c];c=c.previousElementSibling}return[]},next(d,i){let c=d.nextElementSibling;for(;c;){if(c.matches(i))return[c];c=c.nextElementSibling}return[]},focusableChildren(d){const i=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map(c=>`${c}:not([tabindex^="-"])`).join(",");return this.find(i,d).filter(c=>!A(c)&&E(c))},getSelectorFromElement(d){const i=G(d);return i&&N.findOne(i)?i:null},getElementFromSelector(d){const i=G(d);return i?N.findOne(i):null},getMultipleElementsFromSelector(d){const i=G(d);return i?N.find(i):[]}},ot=(d,i="hide")=>{const c=`click.dismiss${d.EVENT_KEY}`,m=d.NAME;T.on(document,c,`[data-bs-dismiss="${m}"]`,function(y){if(["A","AREA"].includes(this.tagName)&&y.preventDefault(),A(this))return;const $=N.getElementFromSelector(this)||this.closest(`.${m}`);d.getOrCreateInstance($)[i]()})},rt="alert",Z=".bs.alert",ht=`close${Z}`,at=`closed${Z}`,ft="fade",pt="show";class Et extends K{static get NAME(){return rt}close(){if(T.trigger(this._element,ht).defaultPrevented)return;this._element.classList.remove(pt);const c=this._element.classList.contains(ft);this._queueCallback(()=>this._destroyElement(),this._element,c)}_destroyElement(){this._element.remove(),T.trigger(this._element,at),this.dispose()}static jQueryInterface(i){return this.each(function(){const c=Et.getOrCreateInstance(this);if(typeof i=="string"){if(c[i]===void 0||i.startsWith("_")||i==="constructor")throw new TypeError(`No method named "${i}"`);c[i](this)}})}}ot(Et,"close"),R(Et);const Mt="button",pe=".bs.button",ce=".data-api",Le="active",Oe='[data-bs-toggle="button"]',Wn=`click${pe}${ce}`;class Cn extends K{static get NAME(){return Mt}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle(Le))}static jQueryInterface(i){return this.each(function(){const c=Cn.getOrCreateInstance(this);i==="toggle"&&c[i]()})}}T.on(document,Wn,Oe,d=>{d.preventDefault();const i=d.target.closest(Oe);Cn.getOrCreateInstance(i).toggle()}),R(Cn);const me="swipe",re=".bs.swipe",zr=`touchstart${re}`,Dp=`touchmove${re}`,Lp=`touchend${re}`,Ip=`pointerdown${re}`,Mp=`pointerup${re}`,kp="touch",Bp="pen",Fp="pointer-event",Hp=40,Vp={endCallback:null,leftCallback:null,rightCallback:null},Up={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class Gr extends v{constructor(i,c){super(),this._element=i,!(!i||!Gr.isSupported())&&(this._config=this._getConfig(c),this._deltaX=0,this._supportPointerEvents=!!window.PointerEvent,this._initEvents())}static get Default(){return Vp}static get DefaultType(){return Up}static get NAME(){return me}dispose(){T.off(this._element,re)}_start(i){if(!this._supportPointerEvents){this._deltaX=i.touches[0].clientX;return}this._eventIsPointerPenTouch(i)&&(this._deltaX=i.clientX)}_end(i){this._eventIsPointerPenTouch(i)&&(this._deltaX=i.clientX-this._deltaX),this._handleSwipe(),w(this._config.endCallback)}_move(i){this._deltaX=i.touches&&i.touches.length>1?0:i.touches[0].clientX-this._deltaX}_handleSwipe(){const i=Math.abs(this._deltaX);if(i<=Hp)return;const c=i/this._deltaX;this._deltaX=0,c&&w(c>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(T.on(this._element,Ip,i=>this._start(i)),T.on(this._element,Mp,i=>this._end(i)),this._element.classList.add(Fp)):(T.on(this._element,zr,i=>this._start(i)),T.on(this._element,Dp,i=>this._move(i)),T.on(this._element,Lp,i=>this._end(i)))}_eventIsPointerPenTouch(i){return this._supportPointerEvents&&(i.pointerType===Bp||i.pointerType===kp)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const jp="carousel",On=".bs.carousel",ql=".data-api",qp="ArrowLeft",Kp="ArrowRight",Wp=500,rr="next",As="prev",Ss="left",Jr="right",Yp=`slide${On}`,mo=`slid${On}`,zp=`keydown${On}`,Gp=`mouseenter${On}`,Jp=`mouseleave${On}`,Qp=`dragstart${On}`,Xp=`load${On}${ql}`,Zp=`click${On}${ql}`,Kl="carousel",Qr="active",tm="slide",em="carousel-item-end",nm="carousel-item-start",sm="carousel-item-next",rm="carousel-item-prev",Wl=".active",Yl=".carousel-item",im=Wl+Yl,om=".carousel-item img",am=".carousel-indicators",lm="[data-bs-slide], [data-bs-slide-to]",cm='[data-bs-ride="carousel"]',um={[qp]:Jr,[Kp]:Ss},fm={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},dm={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class Cs extends K{constructor(i,c){super(i,c),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=N.findOne(am,this._element),this._addEventListeners(),this._config.ride===Kl&&this.cycle()}static get Default(){return fm}static get DefaultType(){return dm}static get NAME(){return jp}next(){this._slide(rr)}nextWhenVisible(){!document.hidden&&E(this._element)&&this.next()}prev(){this._slide(As)}pause(){this._isSliding&&p(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval(()=>this.nextWhenVisible(),this._config.interval)}_maybeEnableCycle(){if(this._config.ride){if(this._isSliding){T.one(this._element,mo,()=>this.cycle());return}this.cycle()}}to(i){const c=this._getItems();if(i>c.length-1||i<0)return;if(this._isSliding){T.one(this._element,mo,()=>this.to(i));return}const m=this._getItemIndex(this._getActive());if(m===i)return;const y=i>m?rr:As;this._slide(y,c[i])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(i){return i.defaultInterval=i.interval,i}_addEventListeners(){this._config.keyboard&&T.on(this._element,zp,i=>this._keydown(i)),this._config.pause==="hover"&&(T.on(this._element,Gp,()=>this.pause()),T.on(this._element,Jp,()=>this._maybeEnableCycle())),this._config.touch&&Gr.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const m of N.find(om,this._element))T.on(m,Qp,y=>y.preventDefault());const c={leftCallback:()=>this._slide(this._directionToOrder(Ss)),rightCallback:()=>this._slide(this._directionToOrder(Jr)),endCallback:()=>{this._config.pause==="hover"&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout(()=>this._maybeEnableCycle(),Wp+this._config.interval))}};this._swipeHelper=new Gr(this._element,c)}_keydown(i){if(/input|textarea/i.test(i.target.tagName))return;const c=um[i.key];c&&(i.preventDefault(),this._slide(this._directionToOrder(c)))}_getItemIndex(i){return this._getItems().indexOf(i)}_setActiveIndicatorElement(i){if(!this._indicatorsElement)return;const c=N.findOne(Wl,this._indicatorsElement);c.classList.remove(Qr),c.removeAttribute("aria-current");const m=N.findOne(`[data-bs-slide-to="${i}"]`,this._indicatorsElement);m&&(m.classList.add(Qr),m.setAttribute("aria-current","true"))}_updateInterval(){const i=this._activeElement||this._getActive();if(!i)return;const c=Number.parseInt(i.getAttribute("data-bs-interval"),10);this._config.interval=c||this._config.defaultInterval}_slide(i,c=null){if(this._isSliding)return;const m=this._getActive(),y=i===rr,$=c||D(this._getItems(),m,y,this._config.wrap);if($===m)return;const x=this._getItemIndex($),W=_t=>T.trigger(this._element,_t,{relatedTarget:$,direction:this._orderToDirection(i),from:this._getItemIndex(m),to:x});if(W(Yp).defaultPrevented||!m||!$)return;const lt=!!this._interval;this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(x),this._activeElement=$;const nt=y?nm:em,wt=y?sm:rm;$.classList.add(wt),F($),m.classList.add(nt),$.classList.add(nt);const At=()=>{$.classList.remove(nt,wt),$.classList.add(Qr),m.classList.remove(Qr,wt,nt),this._isSliding=!1,W(mo)};this._queueCallback(At,m,this._isAnimated()),lt&&this.cycle()}_isAnimated(){return this._element.classList.contains(tm)}_getActive(){return N.findOne(im,this._element)}_getItems(){return N.find(Yl,this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(i){return O()?i===Ss?As:rr:i===Ss?rr:As}_orderToDirection(i){return O()?i===As?Ss:Jr:i===As?Jr:Ss}static jQueryInterface(i){return this.each(function(){const c=Cs.getOrCreateInstance(this,i);if(typeof i=="number"){c.to(i);return}if(typeof i=="string"){if(c[i]===void 0||i.startsWith("_")||i==="constructor")throw new TypeError(`No method named "${i}"`);c[i]()}})}}T.on(document,Zp,lm,function(d){const i=N.getElementFromSelector(this);if(!i||!i.classList.contains(Kl))return;d.preventDefault();const c=Cs.getOrCreateInstance(i),m=this.getAttribute("data-bs-slide-to");if(m){c.to(m),c._maybeEnableCycle();return}if(b.getDataAttribute(this,"slide")==="next"){c.next(),c._maybeEnableCycle();return}c.prev(),c._maybeEnableCycle()}),T.on(window,Xp,()=>{const d=N.find(cm);for(const i of d)Cs.getOrCreateInstance(i)}),R(Cs);const hm="collapse",ir=".bs.collapse",pm=".data-api",mm=`show${ir}`,gm=`shown${ir}`,_m=`hide${ir}`,bm=`hidden${ir}`,vm=`click${ir}${pm}`,go="show",Os="collapse",Xr="collapsing",ym="collapsed",Em=`:scope .${Os} .${Os}`,wm="collapse-horizontal",Tm="width",Am="height",Sm=".collapse.show, .collapse.collapsing",_o='[data-bs-toggle="collapse"]',Cm={parent:null,toggle:!0},Om={parent:"(null|element)",toggle:"boolean"};class Rs extends K{constructor(i,c){super(i,c),this._isTransitioning=!1,this._triggerArray=[];const m=N.find(_o);for(const y of m){const $=N.getSelectorFromElement(y),x=N.find($).filter(W=>W===this._element);$!==null&&x.length&&this._triggerArray.push(y)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return Cm}static get DefaultType(){return Om}static get NAME(){return hm}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let i=[];if(this._config.parent&&(i=this._getFirstLevelChildren(Sm).filter(W=>W!==this._element).map(W=>Rs.getOrCreateInstance(W,{toggle:!1}))),i.length&&i[0]._isTransitioning||T.trigger(this._element,mm).defaultPrevented)return;for(const W of i)W.hide();const m=this._getDimension();this._element.classList.remove(Os),this._element.classList.add(Xr),this._element.style[m]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const y=()=>{this._isTransitioning=!1,this._element.classList.remove(Xr),this._element.classList.add(Os,go),this._element.style[m]="",T.trigger(this._element,gm)},x=`scroll${m[0].toUpperCase()+m.slice(1)}`;this._queueCallback(y,this._element,!0),this._element.style[m]=`${this._element[x]}px`}hide(){if(this._isTransitioning||!this._isShown()||T.trigger(this._element,_m).defaultPrevented)return;const c=this._getDimension();this._element.style[c]=`${this._element.getBoundingClientRect()[c]}px`,F(this._element),this._element.classList.add(Xr),this._element.classList.remove(Os,go);for(const y of this._triggerArray){const $=N.getElementFromSelector(y);$&&!this._isShown($)&&this._addAriaAndCollapsedClass([y],!1)}this._isTransitioning=!0;const m=()=>{this._isTransitioning=!1,this._element.classList.remove(Xr),this._element.classList.add(Os),T.trigger(this._element,bm)};this._element.style[c]="",this._queueCallback(m,this._element,!0)}_isShown(i=this._element){return i.classList.contains(go)}_configAfterMerge(i){return i.toggle=!!i.toggle,i.parent=_(i.parent),i}_getDimension(){return this._element.classList.contains(wm)?Tm:Am}_initializeChildren(){if(!this._config.parent)return;const i=this._getFirstLevelChildren(_o);for(const c of i){const m=N.getElementFromSelector(c);m&&this._addAriaAndCollapsedClass([c],this._isShown(m))}}_getFirstLevelChildren(i){const c=N.find(Em,this._config.parent);return N.find(i,this._config.parent).filter(m=>!c.includes(m))}_addAriaAndCollapsedClass(i,c){if(i.length)for(const m of i)m.classList.toggle(ym,!c),m.setAttribute("aria-expanded",c)}static jQueryInterface(i){const c={};return typeof i=="string"&&/show|hide/.test(i)&&(c.toggle=!1),this.each(function(){const m=Rs.getOrCreateInstance(this,c);if(typeof i=="string"){if(typeof m[i]>"u")throw new TypeError(`No method named "${i}"`);m[i]()}})}}T.on(document,vm,_o,function(d){(d.target.tagName==="A"||d.delegateTarget&&d.delegateTarget.tagName==="A")&&d.preventDefault();for(const i of N.getMultipleElementsFromSelector(this))Rs.getOrCreateInstance(i,{toggle:!1}).toggle()}),R(Rs);var ge="top",Re="bottom",Ne="right",_e="left",Zr="auto",Ns=[ge,Re,Ne,_e],Yn="start",$s="end",zl="clippingParents",bo="viewport",xs="popper",Gl="reference",vo=Ns.reduce(function(d,i){return d.concat([i+"-"+Yn,i+"-"+$s])},[]),yo=[].concat(Ns,[Zr]).reduce(function(d,i){return d.concat([i,i+"-"+Yn,i+"-"+$s])},[]),Jl="beforeRead",Ql="read",Xl="afterRead",Zl="beforeMain",tc="main",ec="afterMain",nc="beforeWrite",sc="write",rc="afterWrite",ic=[Jl,Ql,Xl,Zl,tc,ec,nc,sc,rc];function Qe(d){return d?(d.nodeName||"").toLowerCase():null}function $e(d){if(d==null)return window;if(d.toString()!=="[object Window]"){var i=d.ownerDocument;return i&&i.defaultView||window}return d}function zn(d){var i=$e(d).Element;return d instanceof i||d instanceof Element}function Ie(d){var i=$e(d).HTMLElement;return d instanceof i||d instanceof HTMLElement}function Eo(d){if(typeof ShadowRoot>"u")return!1;var i=$e(d).ShadowRoot;return d instanceof i||d instanceof ShadowRoot}function Rm(d){var i=d.state;Object.keys(i.elements).forEach(function(c){var m=i.styles[c]||{},y=i.attributes[c]||{},$=i.elements[c];!Ie($)||!Qe($)||(Object.assign($.style,m),Object.keys(y).forEach(function(x){var W=y[x];W===!1?$.removeAttribute(x):$.setAttribute(x,W===!0?"":W)}))})}function Nm(d){var i=d.state,c={popper:{position:i.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(i.elements.popper.style,c.popper),i.styles=c,i.elements.arrow&&Object.assign(i.elements.arrow.style,c.arrow),function(){Object.keys(i.elements).forEach(function(m){var y=i.elements[m],$=i.attributes[m]||{},x=Object.keys(i.styles.hasOwnProperty(m)?i.styles[m]:c[m]),W=x.reduce(function(tt,lt){return tt[lt]="",tt},{});!Ie(y)||!Qe(y)||(Object.assign(y.style,W),Object.keys($).forEach(function(tt){y.removeAttribute(tt)}))})}}const wo={name:"applyStyles",enabled:!0,phase:"write",fn:Rm,effect:Nm,requires:["computeStyles"]};function Xe(d){return d.split("-")[0]}var Gn=Math.max,ti=Math.min,Ps=Math.round;function To(){var d=navigator.userAgentData;return d!=null&&d.brands&&Array.isArray(d.brands)?d.brands.map(function(i){return i.brand+"/"+i.version}).join(" "):navigator.userAgent}function oc(){return!/^((?!chrome|android).)*safari/i.test(To())}function Ds(d,i,c){i===void 0&&(i=!1),c===void 0&&(c=!1);var m=d.getBoundingClientRect(),y=1,$=1;i&&Ie(d)&&(y=d.offsetWidth>0&&Ps(m.width)/d.offsetWidth||1,$=d.offsetHeight>0&&Ps(m.height)/d.offsetHeight||1);var x=zn(d)?$e(d):window,W=x.visualViewport,tt=!oc()&&c,lt=(m.left+(tt&&W?W.offsetLeft:0))/y,nt=(m.top+(tt&&W?W.offsetTop:0))/$,wt=m.width/y,At=m.height/$;return{width:wt,height:At,top:nt,right:lt+wt,bottom:nt+At,left:lt,x:lt,y:nt}}function Ao(d){var i=Ds(d),c=d.offsetWidth,m=d.offsetHeight;return Math.abs(i.width-c)<=1&&(c=i.width),Math.abs(i.height-m)<=1&&(m=i.height),{x:d.offsetLeft,y:d.offsetTop,width:c,height:m}}function ac(d,i){var c=i.getRootNode&&i.getRootNode();if(d.contains(i))return!0;if(c&&Eo(c)){var m=i;do{if(m&&d.isSameNode(m))return!0;m=m.parentNode||m.host}while(m)}return!1}function fn(d){return $e(d).getComputedStyle(d)}function $m(d){return["table","td","th"].indexOf(Qe(d))>=0}function Rn(d){return((zn(d)?d.ownerDocument:d.document)||window.document).documentElement}function ei(d){return Qe(d)==="html"?d:d.assignedSlot||d.parentNode||(Eo(d)?d.host:null)||Rn(d)}function lc(d){return!Ie(d)||fn(d).position==="fixed"?null:d.offsetParent}function xm(d){var i=/firefox/i.test(To()),c=/Trident/i.test(To());if(c&&Ie(d)){var m=fn(d);if(m.position==="fixed")return null}var y=ei(d);for(Eo(y)&&(y=y.host);Ie(y)&&["html","body"].indexOf(Qe(y))<0;){var $=fn(y);if($.transform!=="none"||$.perspective!=="none"||$.contain==="paint"||["transform","perspective"].indexOf($.willChange)!==-1||i&&$.willChange==="filter"||i&&$.filter&&$.filter!=="none")return y;y=y.parentNode}return null}function or(d){for(var i=$e(d),c=lc(d);c&&$m(c)&&fn(c).position==="static";)c=lc(c);return c&&(Qe(c)==="html"||Qe(c)==="body"&&fn(c).position==="static")?i:c||xm(d)||i}function So(d){return["top","bottom"].indexOf(d)>=0?"x":"y"}function ar(d,i,c){return Gn(d,ti(i,c))}function Pm(d,i,c){var m=ar(d,i,c);return m>c?c:m}function cc(){return{top:0,right:0,bottom:0,left:0}}function uc(d){return Object.assign({},cc(),d)}function fc(d,i){return i.reduce(function(c,m){return c[m]=d,c},{})}var Dm=function(i,c){return i=typeof i=="function"?i(Object.assign({},c.rects,{placement:c.placement})):i,uc(typeof i!="number"?i:fc(i,Ns))};function Lm(d){var i,c=d.state,m=d.name,y=d.options,$=c.elements.arrow,x=c.modifiersData.popperOffsets,W=Xe(c.placement),tt=So(W),lt=[_e,Ne].indexOf(W)>=0,nt=lt?"height":"width";if(!(!$||!x)){var wt=Dm(y.padding,c),At=Ao($),_t=tt==="y"?ge:_e,Vt=tt==="y"?Re:Ne,St=c.rects.reference[nt]+c.rects.reference[tt]-x[tt]-c.rects.popper[nt],Nt=x[tt]-c.rects.reference[tt],qt=or($),Qt=qt?tt==="y"?qt.clientHeight||0:qt.clientWidth||0:0,Xt=St/2-Nt/2,Ct=wt[_t],kt=Qt-At[nt]-wt[Vt],Bt=Qt/2-At[nt]/2+Xt,Gt=ar(Ct,Bt,kt),ie=tt;c.modifiersData[m]=(i={},i[ie]=Gt,i.centerOffset=Gt-Bt,i)}}function Im(d){var i=d.state,c=d.options,m=c.element,y=m===void 0?"[data-popper-arrow]":m;y!=null&&(typeof y=="string"&&(y=i.elements.popper.querySelector(y),!y)||ac(i.elements.popper,y)&&(i.elements.arrow=y))}const dc={name:"arrow",enabled:!0,phase:"main",fn:Lm,effect:Im,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Ls(d){return d.split("-")[1]}var Mm={top:"auto",right:"auto",bottom:"auto",left:"auto"};function km(d,i){var c=d.x,m=d.y,y=i.devicePixelRatio||1;return{x:Ps(c*y)/y||0,y:Ps(m*y)/y||0}}function hc(d){var i,c=d.popper,m=d.popperRect,y=d.placement,$=d.variation,x=d.offsets,W=d.position,tt=d.gpuAcceleration,lt=d.adaptive,nt=d.roundOffsets,wt=d.isFixed,At=x.x,_t=At===void 0?0:At,Vt=x.y,St=Vt===void 0?0:Vt,Nt=typeof nt=="function"?nt({x:_t,y:St}):{x:_t,y:St};_t=Nt.x,St=Nt.y;var qt=x.hasOwnProperty("x"),Qt=x.hasOwnProperty("y"),Xt=_e,Ct=ge,kt=window;if(lt){var Bt=or(c),Gt="clientHeight",ie="clientWidth";if(Bt===$e(c)&&(Bt=Rn(c),fn(Bt).position!=="static"&&W==="absolute"&&(Gt="scrollHeight",ie="scrollWidth")),Bt=Bt,y===ge||(y===_e||y===Ne)&&$===$s){Ct=Re;var ne=wt&&Bt===kt&&kt.visualViewport?kt.visualViewport.height:Bt[Gt];St-=ne-m.height,St*=tt?1:-1}if(y===_e||(y===ge||y===Re)&&$===$s){Xt=Ne;var te=wt&&Bt===kt&&kt.visualViewport?kt.visualViewport.width:Bt[ie];_t-=te-m.width,_t*=tt?1:-1}}var ue=Object.assign({position:W},lt&&Mm),qe=nt===!0?km({x:_t,y:St},$e(c)):{x:_t,y:St};if(_t=qe.x,St=qe.y,tt){var be;return Object.assign({},ue,(be={},be[Ct]=Qt?"0":"",be[Xt]=qt?"0":"",be.transform=(kt.devicePixelRatio||1)<=1?"translate("+_t+"px, "+St+"px)":"translate3d("+_t+"px, "+St+"px, 0)",be))}return Object.assign({},ue,(i={},i[Ct]=Qt?St+"px":"",i[Xt]=qt?_t+"px":"",i.transform="",i))}function Bm(d){var i=d.state,c=d.options,m=c.gpuAcceleration,y=m===void 0?!0:m,$=c.adaptive,x=$===void 0?!0:$,W=c.roundOffsets,tt=W===void 0?!0:W,lt={placement:Xe(i.placement),variation:Ls(i.placement),popper:i.elements.popper,popperRect:i.rects.popper,gpuAcceleration:y,isFixed:i.options.strategy==="fixed"};i.modifiersData.popperOffsets!=null&&(i.styles.popper=Object.assign({},i.styles.popper,hc(Object.assign({},lt,{offsets:i.modifiersData.popperOffsets,position:i.options.strategy,adaptive:x,roundOffsets:tt})))),i.modifiersData.arrow!=null&&(i.styles.arrow=Object.assign({},i.styles.arrow,hc(Object.assign({},lt,{offsets:i.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:tt})))),i.attributes.popper=Object.assign({},i.attributes.popper,{"data-popper-placement":i.placement})}const Co={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Bm,data:{}};var ni={passive:!0};function Fm(d){var i=d.state,c=d.instance,m=d.options,y=m.scroll,$=y===void 0?!0:y,x=m.resize,W=x===void 0?!0:x,tt=$e(i.elements.popper),lt=[].concat(i.scrollParents.reference,i.scrollParents.popper);return $&<.forEach(function(nt){nt.addEventListener("scroll",c.update,ni)}),W&&tt.addEventListener("resize",c.update,ni),function(){$&<.forEach(function(nt){nt.removeEventListener("scroll",c.update,ni)}),W&&tt.removeEventListener("resize",c.update,ni)}}const Oo={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:Fm,data:{}};var Hm={left:"right",right:"left",bottom:"top",top:"bottom"};function si(d){return d.replace(/left|right|bottom|top/g,function(i){return Hm[i]})}var Vm={start:"end",end:"start"};function pc(d){return d.replace(/start|end/g,function(i){return Vm[i]})}function Ro(d){var i=$e(d),c=i.pageXOffset,m=i.pageYOffset;return{scrollLeft:c,scrollTop:m}}function No(d){return Ds(Rn(d)).left+Ro(d).scrollLeft}function Um(d,i){var c=$e(d),m=Rn(d),y=c.visualViewport,$=m.clientWidth,x=m.clientHeight,W=0,tt=0;if(y){$=y.width,x=y.height;var lt=oc();(lt||!lt&&i==="fixed")&&(W=y.offsetLeft,tt=y.offsetTop)}return{width:$,height:x,x:W+No(d),y:tt}}function jm(d){var i,c=Rn(d),m=Ro(d),y=(i=d.ownerDocument)==null?void 0:i.body,$=Gn(c.scrollWidth,c.clientWidth,y?y.scrollWidth:0,y?y.clientWidth:0),x=Gn(c.scrollHeight,c.clientHeight,y?y.scrollHeight:0,y?y.clientHeight:0),W=-m.scrollLeft+No(d),tt=-m.scrollTop;return fn(y||c).direction==="rtl"&&(W+=Gn(c.clientWidth,y?y.clientWidth:0)-$),{width:$,height:x,x:W,y:tt}}function $o(d){var i=fn(d),c=i.overflow,m=i.overflowX,y=i.overflowY;return/auto|scroll|overlay|hidden/.test(c+y+m)}function mc(d){return["html","body","#document"].indexOf(Qe(d))>=0?d.ownerDocument.body:Ie(d)&&$o(d)?d:mc(ei(d))}function lr(d,i){var c;i===void 0&&(i=[]);var m=mc(d),y=m===((c=d.ownerDocument)==null?void 0:c.body),$=$e(m),x=y?[$].concat($.visualViewport||[],$o(m)?m:[]):m,W=i.concat(x);return y?W:W.concat(lr(ei(x)))}function xo(d){return Object.assign({},d,{left:d.x,top:d.y,right:d.x+d.width,bottom:d.y+d.height})}function qm(d,i){var c=Ds(d,!1,i==="fixed");return c.top=c.top+d.clientTop,c.left=c.left+d.clientLeft,c.bottom=c.top+d.clientHeight,c.right=c.left+d.clientWidth,c.width=d.clientWidth,c.height=d.clientHeight,c.x=c.left,c.y=c.top,c}function gc(d,i,c){return i===bo?xo(Um(d,c)):zn(i)?qm(i,c):xo(jm(Rn(d)))}function Km(d){var i=lr(ei(d)),c=["absolute","fixed"].indexOf(fn(d).position)>=0,m=c&&Ie(d)?or(d):d;return zn(m)?i.filter(function(y){return zn(y)&&ac(y,m)&&Qe(y)!=="body"}):[]}function Wm(d,i,c,m){var y=i==="clippingParents"?Km(d):[].concat(i),$=[].concat(y,[c]),x=$[0],W=$.reduce(function(tt,lt){var nt=gc(d,lt,m);return tt.top=Gn(nt.top,tt.top),tt.right=ti(nt.right,tt.right),tt.bottom=ti(nt.bottom,tt.bottom),tt.left=Gn(nt.left,tt.left),tt},gc(d,x,m));return W.width=W.right-W.left,W.height=W.bottom-W.top,W.x=W.left,W.y=W.top,W}function _c(d){var i=d.reference,c=d.element,m=d.placement,y=m?Xe(m):null,$=m?Ls(m):null,x=i.x+i.width/2-c.width/2,W=i.y+i.height/2-c.height/2,tt;switch(y){case ge:tt={x,y:i.y-c.height};break;case Re:tt={x,y:i.y+i.height};break;case Ne:tt={x:i.x+i.width,y:W};break;case _e:tt={x:i.x-c.width,y:W};break;default:tt={x:i.x,y:i.y}}var lt=y?So(y):null;if(lt!=null){var nt=lt==="y"?"height":"width";switch($){case Yn:tt[lt]=tt[lt]-(i[nt]/2-c[nt]/2);break;case $s:tt[lt]=tt[lt]+(i[nt]/2-c[nt]/2);break}}return tt}function Is(d,i){i===void 0&&(i={});var c=i,m=c.placement,y=m===void 0?d.placement:m,$=c.strategy,x=$===void 0?d.strategy:$,W=c.boundary,tt=W===void 0?zl:W,lt=c.rootBoundary,nt=lt===void 0?bo:lt,wt=c.elementContext,At=wt===void 0?xs:wt,_t=c.altBoundary,Vt=_t===void 0?!1:_t,St=c.padding,Nt=St===void 0?0:St,qt=uc(typeof Nt!="number"?Nt:fc(Nt,Ns)),Qt=At===xs?Gl:xs,Xt=d.rects.popper,Ct=d.elements[Vt?Qt:At],kt=Wm(zn(Ct)?Ct:Ct.contextElement||Rn(d.elements.popper),tt,nt,x),Bt=Ds(d.elements.reference),Gt=_c({reference:Bt,element:Xt,placement:y}),ie=xo(Object.assign({},Xt,Gt)),ne=At===xs?ie:Bt,te={top:kt.top-ne.top+qt.top,bottom:ne.bottom-kt.bottom+qt.bottom,left:kt.left-ne.left+qt.left,right:ne.right-kt.right+qt.right},ue=d.modifiersData.offset;if(At===xs&&ue){var qe=ue[y];Object.keys(te).forEach(function(be){var ss=[Ne,Re].indexOf(be)>=0?1:-1,rs=[ge,Re].indexOf(be)>=0?"y":"x";te[be]+=qe[rs]*ss})}return te}function Ym(d,i){i===void 0&&(i={});var c=i,m=c.placement,y=c.boundary,$=c.rootBoundary,x=c.padding,W=c.flipVariations,tt=c.allowedAutoPlacements,lt=tt===void 0?yo:tt,nt=Ls(m),wt=nt?W?vo:vo.filter(function(Vt){return Ls(Vt)===nt}):Ns,At=wt.filter(function(Vt){return lt.indexOf(Vt)>=0});At.length===0&&(At=wt);var _t=At.reduce(function(Vt,St){return Vt[St]=Is(d,{placement:St,boundary:y,rootBoundary:$,padding:x})[Xe(St)],Vt},{});return Object.keys(_t).sort(function(Vt,St){return _t[Vt]-_t[St]})}function zm(d){if(Xe(d)===Zr)return[];var i=si(d);return[pc(d),i,pc(i)]}function Gm(d){var i=d.state,c=d.options,m=d.name;if(!i.modifiersData[m]._skip){for(var y=c.mainAxis,$=y===void 0?!0:y,x=c.altAxis,W=x===void 0?!0:x,tt=c.fallbackPlacements,lt=c.padding,nt=c.boundary,wt=c.rootBoundary,At=c.altBoundary,_t=c.flipVariations,Vt=_t===void 0?!0:_t,St=c.allowedAutoPlacements,Nt=i.options.placement,qt=Xe(Nt),Qt=qt===Nt,Xt=tt||(Qt||!Vt?[si(Nt)]:zm(Nt)),Ct=[Nt].concat(Xt).reduce(function(Bs,$n){return Bs.concat(Xe($n)===Zr?Ym(i,{placement:$n,boundary:nt,rootBoundary:wt,padding:lt,flipVariations:Vt,allowedAutoPlacements:St}):$n)},[]),kt=i.rects.reference,Bt=i.rects.popper,Gt=new Map,ie=!0,ne=Ct[0],te=0;te=0,rs=ss?"width":"height",xe=Is(i,{placement:ue,boundary:nt,rootBoundary:wt,altBoundary:At,padding:lt}),Ke=ss?be?Ne:_e:be?Re:ge;kt[rs]>Bt[rs]&&(Ke=si(Ke));var di=si(Ke),is=[];if($&&is.push(xe[qe]<=0),W&&is.push(xe[Ke]<=0,xe[di]<=0),is.every(function(Bs){return Bs})){ne=ue,ie=!1;break}Gt.set(ue,is)}if(ie)for(var hi=Vt?3:1,Ko=function($n){var hr=Ct.find(function(mi){var os=Gt.get(mi);if(os)return os.slice(0,$n).every(function(Wo){return Wo})});if(hr)return ne=hr,"break"},dr=hi;dr>0;dr--){var pi=Ko(dr);if(pi==="break")break}i.placement!==ne&&(i.modifiersData[m]._skip=!0,i.placement=ne,i.reset=!0)}}const bc={name:"flip",enabled:!0,phase:"main",fn:Gm,requiresIfExists:["offset"],data:{_skip:!1}};function vc(d,i,c){return c===void 0&&(c={x:0,y:0}),{top:d.top-i.height-c.y,right:d.right-i.width+c.x,bottom:d.bottom-i.height+c.y,left:d.left-i.width-c.x}}function yc(d){return[ge,Ne,Re,_e].some(function(i){return d[i]>=0})}function Jm(d){var i=d.state,c=d.name,m=i.rects.reference,y=i.rects.popper,$=i.modifiersData.preventOverflow,x=Is(i,{elementContext:"reference"}),W=Is(i,{altBoundary:!0}),tt=vc(x,m),lt=vc(W,y,$),nt=yc(tt),wt=yc(lt);i.modifiersData[c]={referenceClippingOffsets:tt,popperEscapeOffsets:lt,isReferenceHidden:nt,hasPopperEscaped:wt},i.attributes.popper=Object.assign({},i.attributes.popper,{"data-popper-reference-hidden":nt,"data-popper-escaped":wt})}const Ec={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Jm};function Qm(d,i,c){var m=Xe(d),y=[_e,ge].indexOf(m)>=0?-1:1,$=typeof c=="function"?c(Object.assign({},i,{placement:d})):c,x=$[0],W=$[1];return x=x||0,W=(W||0)*y,[_e,Ne].indexOf(m)>=0?{x:W,y:x}:{x,y:W}}function Xm(d){var i=d.state,c=d.options,m=d.name,y=c.offset,$=y===void 0?[0,0]:y,x=yo.reduce(function(nt,wt){return nt[wt]=Qm(wt,i.rects,$),nt},{}),W=x[i.placement],tt=W.x,lt=W.y;i.modifiersData.popperOffsets!=null&&(i.modifiersData.popperOffsets.x+=tt,i.modifiersData.popperOffsets.y+=lt),i.modifiersData[m]=x}const wc={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:Xm};function Zm(d){var i=d.state,c=d.name;i.modifiersData[c]=_c({reference:i.rects.reference,element:i.rects.popper,placement:i.placement})}const Po={name:"popperOffsets",enabled:!0,phase:"read",fn:Zm,data:{}};function tg(d){return d==="x"?"y":"x"}function eg(d){var i=d.state,c=d.options,m=d.name,y=c.mainAxis,$=y===void 0?!0:y,x=c.altAxis,W=x===void 0?!1:x,tt=c.boundary,lt=c.rootBoundary,nt=c.altBoundary,wt=c.padding,At=c.tether,_t=At===void 0?!0:At,Vt=c.tetherOffset,St=Vt===void 0?0:Vt,Nt=Is(i,{boundary:tt,rootBoundary:lt,padding:wt,altBoundary:nt}),qt=Xe(i.placement),Qt=Ls(i.placement),Xt=!Qt,Ct=So(qt),kt=tg(Ct),Bt=i.modifiersData.popperOffsets,Gt=i.rects.reference,ie=i.rects.popper,ne=typeof St=="function"?St(Object.assign({},i.rects,{placement:i.placement})):St,te=typeof ne=="number"?{mainAxis:ne,altAxis:ne}:Object.assign({mainAxis:0,altAxis:0},ne),ue=i.modifiersData.offset?i.modifiersData.offset[i.placement]:null,qe={x:0,y:0};if(Bt){if($){var be,ss=Ct==="y"?ge:_e,rs=Ct==="y"?Re:Ne,xe=Ct==="y"?"height":"width",Ke=Bt[Ct],di=Ke+Nt[ss],is=Ke-Nt[rs],hi=_t?-ie[xe]/2:0,Ko=Qt===Yn?Gt[xe]:ie[xe],dr=Qt===Yn?-ie[xe]:-Gt[xe],pi=i.elements.arrow,Bs=_t&&pi?Ao(pi):{width:0,height:0},$n=i.modifiersData["arrow#persistent"]?i.modifiersData["arrow#persistent"].padding:cc(),hr=$n[ss],mi=$n[rs],os=ar(0,Gt[xe],Bs[xe]),Wo=Xt?Gt[xe]/2-hi-os-hr-te.mainAxis:Ko-os-hr-te.mainAxis,Yb=Xt?-Gt[xe]/2+hi+os+mi+te.mainAxis:dr+os+mi+te.mainAxis,Yo=i.elements.arrow&&or(i.elements.arrow),zb=Yo?Ct==="y"?Yo.clientTop||0:Yo.clientLeft||0:0,uu=(be=ue==null?void 0:ue[Ct])!=null?be:0,Gb=Ke+Wo-uu-zb,Jb=Ke+Yb-uu,fu=ar(_t?ti(di,Gb):di,Ke,_t?Gn(is,Jb):is);Bt[Ct]=fu,qe[Ct]=fu-Ke}if(W){var du,Qb=Ct==="x"?ge:_e,Xb=Ct==="x"?Re:Ne,as=Bt[kt],gi=kt==="y"?"height":"width",hu=as+Nt[Qb],pu=as-Nt[Xb],zo=[ge,_e].indexOf(qt)!==-1,mu=(du=ue==null?void 0:ue[kt])!=null?du:0,gu=zo?hu:as-Gt[gi]-ie[gi]-mu+te.altAxis,_u=zo?as+Gt[gi]+ie[gi]-mu-te.altAxis:pu,bu=_t&&zo?Pm(gu,as,_u):ar(_t?gu:hu,as,_t?_u:pu);Bt[kt]=bu,qe[kt]=bu-as}i.modifiersData[m]=qe}}const Tc={name:"preventOverflow",enabled:!0,phase:"main",fn:eg,requiresIfExists:["offset"]};function ng(d){return{scrollLeft:d.scrollLeft,scrollTop:d.scrollTop}}function sg(d){return d===$e(d)||!Ie(d)?Ro(d):ng(d)}function rg(d){var i=d.getBoundingClientRect(),c=Ps(i.width)/d.offsetWidth||1,m=Ps(i.height)/d.offsetHeight||1;return c!==1||m!==1}function ig(d,i,c){c===void 0&&(c=!1);var m=Ie(i),y=Ie(i)&&rg(i),$=Rn(i),x=Ds(d,y,c),W={scrollLeft:0,scrollTop:0},tt={x:0,y:0};return(m||!m&&!c)&&((Qe(i)!=="body"||$o($))&&(W=sg(i)),Ie(i)?(tt=Ds(i,!0),tt.x+=i.clientLeft,tt.y+=i.clientTop):$&&(tt.x=No($))),{x:x.left+W.scrollLeft-tt.x,y:x.top+W.scrollTop-tt.y,width:x.width,height:x.height}}function og(d){var i=new Map,c=new Set,m=[];d.forEach(function($){i.set($.name,$)});function y($){c.add($.name);var x=[].concat($.requires||[],$.requiresIfExists||[]);x.forEach(function(W){if(!c.has(W)){var tt=i.get(W);tt&&y(tt)}}),m.push($)}return d.forEach(function($){c.has($.name)||y($)}),m}function ag(d){var i=og(d);return ic.reduce(function(c,m){return c.concat(i.filter(function(y){return y.phase===m}))},[])}function lg(d){var i;return function(){return i||(i=new Promise(function(c){Promise.resolve().then(function(){i=void 0,c(d())})})),i}}function cg(d){var i=d.reduce(function(c,m){var y=c[m.name];return c[m.name]=y?Object.assign({},y,m,{options:Object.assign({},y.options,m.options),data:Object.assign({},y.data,m.data)}):m,c},{});return Object.keys(i).map(function(c){return i[c]})}var Ac={placement:"bottom",modifiers:[],strategy:"absolute"};function Sc(){for(var d=arguments.length,i=new Array(d),c=0;c"u")throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org/docs/v2/)");let i=this._element;this._config.reference==="parent"?i=this._parent:g(this._config.reference)?i=_(this._config.reference):typeof this._config.reference=="object"&&(i=this._config.reference);const c=this._getPopperConfig();this._popper=Do(i,this._menu,c)}_isShown(){return this._menu.classList.contains(Ms)}_getPlacement(){const i=this._parent;if(i.classList.contains(Tg))return Ig;if(i.classList.contains(Ag))return Mg;if(i.classList.contains(Sg))return kg;if(i.classList.contains(Cg))return Bg;const c=getComputedStyle(this._menu).getPropertyValue("--bs-position").trim()==="end";return i.classList.contains(wg)?c?Pg:xg:c?Lg:Dg}_detectNavbar(){return this._element.closest(Rg)!==null}_getOffset(){const{offset:i}=this._config;return typeof i=="string"?i.split(",").map(c=>Number.parseInt(c,10)):typeof i=="function"?c=>i(c,this._element):i}_getPopperConfig(){const i={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return(this._inNavbar||this._config.display==="static")&&(b.setDataAttribute(this._menu,"popper","static"),i.modifiers=[{name:"applyStyles",enabled:!1}]),{...i,...w(this._config.popperConfig,[void 0,i])}}_selectMenuItem({key:i,target:c}){const m=N.find($g,this._menu).filter(y=>E(y));m.length&&D(m,c,i===Nc,!m.includes(c)).focus()}static jQueryInterface(i){return this.each(function(){const c=je.getOrCreateInstance(this,i);if(typeof i=="string"){if(typeof c[i]>"u")throw new TypeError(`No method named "${i}"`);c[i]()}})}static clearMenus(i){if(i.button===gg||i.type==="keyup"&&i.key!==Rc)return;const c=N.find(Og);for(const m of c){const y=je.getInstance(m);if(!y||y._config.autoClose===!1)continue;const $=i.composedPath(),x=$.includes(y._menu);if($.includes(y._element)||y._config.autoClose==="inside"&&!x||y._config.autoClose==="outside"&&x||y._menu.contains(i.target)&&(i.type==="keyup"&&i.key===Rc||/input|select|option|textarea|form/i.test(i.target.tagName)))continue;const W={relatedTarget:y._element};i.type==="click"&&(W.clickEvent=i),y._completeHide(W)}}static dataApiKeydownHandler(i){const c=/input|textarea/i.test(i.target.tagName),m=i.key===pg,y=[mg,Nc].includes(i.key);if(!y&&!m||c&&!m)return;i.preventDefault();const $=this.matches(Qn)?this:N.prev(this,Qn)[0]||N.next(this,Qn)[0]||N.findOne(Qn,i.delegateTarget.parentNode),x=je.getOrCreateInstance($);if(y){i.stopPropagation(),x.show(),x._selectMenuItem(i);return}x._isShown()&&(i.stopPropagation(),x.hide(),$.focus())}}T.on(document,xc,Qn,je.dataApiKeydownHandler),T.on(document,xc,ii,je.dataApiKeydownHandler),T.on(document,$c,je.clearMenus),T.on(document,Eg,je.clearMenus),T.on(document,$c,Qn,function(d){d.preventDefault(),je.getOrCreateInstance(this).toggle()}),R(je);const Pc="backdrop",Vg="fade",Dc="show",Lc=`mousedown.bs.${Pc}`,Ug={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},jg={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class Ic extends v{constructor(i){super(),this._config=this._getConfig(i),this._isAppended=!1,this._element=null}static get Default(){return Ug}static get DefaultType(){return jg}static get NAME(){return Pc}show(i){if(!this._config.isVisible){w(i);return}this._append();const c=this._getElement();this._config.isAnimated&&F(c),c.classList.add(Dc),this._emulateAnimation(()=>{w(i)})}hide(i){if(!this._config.isVisible){w(i);return}this._getElement().classList.remove(Dc),this._emulateAnimation(()=>{this.dispose(),w(i)})}dispose(){this._isAppended&&(T.off(this._element,Lc),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const i=document.createElement("div");i.className=this._config.className,this._config.isAnimated&&i.classList.add(Vg),this._element=i}return this._element}_configAfterMerge(i){return i.rootElement=_(i.rootElement),i}_append(){if(this._isAppended)return;const i=this._getElement();this._config.rootElement.append(i),T.on(i,Lc,()=>{w(this._config.clickCallback)}),this._isAppended=!0}_emulateAnimation(i){S(i,this._getElement(),this._config.isAnimated)}}const qg="focustrap",oi=".bs.focustrap",Kg=`focusin${oi}`,Wg=`keydown.tab${oi}`,Yg="Tab",zg="forward",Mc="backward",Gg={autofocus:!0,trapElement:null},Jg={autofocus:"boolean",trapElement:"element"};class kc extends v{constructor(i){super(),this._config=this._getConfig(i),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return Gg}static get DefaultType(){return Jg}static get NAME(){return qg}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),T.off(document,oi),T.on(document,Kg,i=>this._handleFocusin(i)),T.on(document,Wg,i=>this._handleKeydown(i)),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,T.off(document,oi))}_handleFocusin(i){const{trapElement:c}=this._config;if(i.target===document||i.target===c||c.contains(i.target))return;const m=N.focusableChildren(c);m.length===0?c.focus():this._lastTabNavDirection===Mc?m[m.length-1].focus():m[0].focus()}_handleKeydown(i){i.key===Yg&&(this._lastTabNavDirection=i.shiftKey?Mc:zg)}}const Bc=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",Fc=".sticky-top",ai="padding-right",Hc="margin-right";class Io{constructor(){this._element=document.body}getWidth(){const i=document.documentElement.clientWidth;return Math.abs(window.innerWidth-i)}hide(){const i=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,ai,c=>c+i),this._setElementAttributes(Bc,ai,c=>c+i),this._setElementAttributes(Fc,Hc,c=>c-i)}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,ai),this._resetElementAttributes(Bc,ai),this._resetElementAttributes(Fc,Hc)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(i,c,m){const y=this.getWidth(),$=x=>{if(x!==this._element&&window.innerWidth>x.clientWidth+y)return;this._saveInitialAttribute(x,c);const W=window.getComputedStyle(x).getPropertyValue(c);x.style.setProperty(c,`${m(Number.parseFloat(W))}px`)};this._applyManipulationCallback(i,$)}_saveInitialAttribute(i,c){const m=i.style.getPropertyValue(c);m&&b.setDataAttribute(i,c,m)}_resetElementAttributes(i,c){const m=y=>{const $=b.getDataAttribute(y,c);if($===null){y.style.removeProperty(c);return}b.removeDataAttribute(y,c),y.style.setProperty(c,$)};this._applyManipulationCallback(i,m)}_applyManipulationCallback(i,c){if(g(i)){c(i);return}for(const m of N.find(i,this._element))c(m)}}const Qg="modal",Me=".bs.modal",Xg=".data-api",Zg="Escape",t_=`hide${Me}`,e_=`hidePrevented${Me}`,Vc=`hidden${Me}`,Uc=`show${Me}`,n_=`shown${Me}`,s_=`resize${Me}`,r_=`click.dismiss${Me}`,i_=`mousedown.dismiss${Me}`,o_=`keydown.dismiss${Me}`,a_=`click${Me}${Xg}`,jc="modal-open",l_="fade",qc="show",Mo="modal-static",c_=".modal.show",u_=".modal-dialog",f_=".modal-body",d_='[data-bs-toggle="modal"]',h_={backdrop:!0,focus:!0,keyboard:!0},p_={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class Xn extends K{constructor(i,c){super(i,c),this._dialog=N.findOne(u_,this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new Io,this._addEventListeners()}static get Default(){return h_}static get DefaultType(){return p_}static get NAME(){return Qg}toggle(i){return this._isShown?this.hide():this.show(i)}show(i){this._isShown||this._isTransitioning||T.trigger(this._element,Uc,{relatedTarget:i}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(jc),this._adjustDialog(),this._backdrop.show(()=>this._showElement(i)))}hide(){!this._isShown||this._isTransitioning||T.trigger(this._element,t_).defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(qc),this._queueCallback(()=>this._hideModal(),this._element,this._isAnimated()))}dispose(){T.off(window,Me),T.off(this._dialog,Me),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new Ic({isVisible:!!this._config.backdrop,isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new kc({trapElement:this._element})}_showElement(i){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const c=N.findOne(f_,this._dialog);c&&(c.scrollTop=0),F(this._element),this._element.classList.add(qc);const m=()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,T.trigger(this._element,n_,{relatedTarget:i})};this._queueCallback(m,this._dialog,this._isAnimated())}_addEventListeners(){T.on(this._element,o_,i=>{if(i.key===Zg){if(this._config.keyboard){this.hide();return}this._triggerBackdropTransition()}}),T.on(window,s_,()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()}),T.on(this._element,i_,i=>{T.one(this._element,r_,c=>{if(!(this._element!==i.target||this._element!==c.target)){if(this._config.backdrop==="static"){this._triggerBackdropTransition();return}this._config.backdrop&&this.hide()}})})}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide(()=>{document.body.classList.remove(jc),this._resetAdjustments(),this._scrollBar.reset(),T.trigger(this._element,Vc)})}_isAnimated(){return this._element.classList.contains(l_)}_triggerBackdropTransition(){if(T.trigger(this._element,e_).defaultPrevented)return;const c=this._element.scrollHeight>document.documentElement.clientHeight,m=this._element.style.overflowY;m==="hidden"||this._element.classList.contains(Mo)||(c||(this._element.style.overflowY="hidden"),this._element.classList.add(Mo),this._queueCallback(()=>{this._element.classList.remove(Mo),this._queueCallback(()=>{this._element.style.overflowY=m},this._dialog)},this._dialog),this._element.focus())}_adjustDialog(){const i=this._element.scrollHeight>document.documentElement.clientHeight,c=this._scrollBar.getWidth(),m=c>0;if(m&&!i){const y=O()?"paddingLeft":"paddingRight";this._element.style[y]=`${c}px`}if(!m&&i){const y=O()?"paddingRight":"paddingLeft";this._element.style[y]=`${c}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(i,c){return this.each(function(){const m=Xn.getOrCreateInstance(this,i);if(typeof i=="string"){if(typeof m[i]>"u")throw new TypeError(`No method named "${i}"`);m[i](c)}})}}T.on(document,a_,d_,function(d){const i=N.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&d.preventDefault(),T.one(i,Uc,y=>{y.defaultPrevented||T.one(i,Vc,()=>{E(this)&&this.focus()})});const c=N.findOne(c_);c&&Xn.getInstance(c).hide(),Xn.getOrCreateInstance(i).toggle(this)}),ot(Xn),R(Xn);const m_="offcanvas",dn=".bs.offcanvas",Kc=".data-api",g_=`load${dn}${Kc}`,__="Escape",Wc="show",Yc="showing",zc="hiding",b_="offcanvas-backdrop",Gc=".offcanvas.show",v_=`show${dn}`,y_=`shown${dn}`,E_=`hide${dn}`,Jc=`hidePrevented${dn}`,Qc=`hidden${dn}`,w_=`resize${dn}`,T_=`click${dn}${Kc}`,A_=`keydown.dismiss${dn}`,S_='[data-bs-toggle="offcanvas"]',C_={backdrop:!0,keyboard:!0,scroll:!1},O_={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class hn extends K{constructor(i,c){super(i,c),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return C_}static get DefaultType(){return O_}static get NAME(){return m_}toggle(i){return this._isShown?this.hide():this.show(i)}show(i){if(this._isShown||T.trigger(this._element,v_,{relatedTarget:i}).defaultPrevented)return;this._isShown=!0,this._backdrop.show(),this._config.scroll||new Io().hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Yc);const m=()=>{(!this._config.scroll||this._config.backdrop)&&this._focustrap.activate(),this._element.classList.add(Wc),this._element.classList.remove(Yc),T.trigger(this._element,y_,{relatedTarget:i})};this._queueCallback(m,this._element,!0)}hide(){if(!this._isShown||T.trigger(this._element,E_).defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add(zc),this._backdrop.hide();const c=()=>{this._element.classList.remove(Wc,zc),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||new Io().reset(),T.trigger(this._element,Qc)};this._queueCallback(c,this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const i=()=>{if(this._config.backdrop==="static"){T.trigger(this._element,Jc);return}this.hide()},c=!!this._config.backdrop;return new Ic({className:b_,isVisible:c,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:c?i:null})}_initializeFocusTrap(){return new kc({trapElement:this._element})}_addEventListeners(){T.on(this._element,A_,i=>{if(i.key===__){if(this._config.keyboard){this.hide();return}T.trigger(this._element,Jc)}})}static jQueryInterface(i){return this.each(function(){const c=hn.getOrCreateInstance(this,i);if(typeof i=="string"){if(c[i]===void 0||i.startsWith("_")||i==="constructor")throw new TypeError(`No method named "${i}"`);c[i](this)}})}}T.on(document,T_,S_,function(d){const i=N.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&d.preventDefault(),A(this))return;T.one(i,Qc,()=>{E(this)&&this.focus()});const c=N.findOne(Gc);c&&c!==i&&hn.getInstance(c).hide(),hn.getOrCreateInstance(i).toggle(this)}),T.on(window,g_,()=>{for(const d of N.find(Gc))hn.getOrCreateInstance(d).show()}),T.on(window,w_,()=>{for(const d of N.find("[aria-modal][class*=show][class*=offcanvas-]"))getComputedStyle(d).position!=="fixed"&&hn.getOrCreateInstance(d).hide()}),ot(hn),R(hn);const Xc={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],dd:[],div:[],dl:[],dt:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},R_=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),N_=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,$_=(d,i)=>{const c=d.nodeName.toLowerCase();return i.includes(c)?R_.has(c)?!!N_.test(d.nodeValue):!0:i.filter(m=>m instanceof RegExp).some(m=>m.test(c))};function x_(d,i,c){if(!d.length)return d;if(c&&typeof c=="function")return c(d);const y=new window.DOMParser().parseFromString(d,"text/html"),$=[].concat(...y.body.querySelectorAll("*"));for(const x of $){const W=x.nodeName.toLowerCase();if(!Object.keys(i).includes(W)){x.remove();continue}const tt=[].concat(...x.attributes),lt=[].concat(i["*"]||[],i[W]||[]);for(const nt of tt)$_(nt,lt)||x.removeAttribute(nt.nodeName)}return y.body.innerHTML}const P_="TemplateFactory",D_={allowList:Xc,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"
"},L_={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},I_={entry:"(string|element|function|null)",selector:"(string|element)"};class M_ extends v{constructor(i){super(),this._config=this._getConfig(i)}static get Default(){return D_}static get DefaultType(){return L_}static get NAME(){return P_}getContent(){return Object.values(this._config.content).map(i=>this._resolvePossibleFunction(i)).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(i){return this._checkContent(i),this._config.content={...this._config.content,...i},this}toHtml(){const i=document.createElement("div");i.innerHTML=this._maybeSanitize(this._config.template);for(const[y,$]of Object.entries(this._config.content))this._setContent(i,$,y);const c=i.children[0],m=this._resolvePossibleFunction(this._config.extraClass);return m&&c.classList.add(...m.split(" ")),c}_typeCheckConfig(i){super._typeCheckConfig(i),this._checkContent(i.content)}_checkContent(i){for(const[c,m]of Object.entries(i))super._typeCheckConfig({selector:c,entry:m},I_)}_setContent(i,c,m){const y=N.findOne(m,i);if(y){if(c=this._resolvePossibleFunction(c),!c){y.remove();return}if(g(c)){this._putElementInTemplate(_(c),y);return}if(this._config.html){y.innerHTML=this._maybeSanitize(c);return}y.textContent=c}}_maybeSanitize(i){return this._config.sanitize?x_(i,this._config.allowList,this._config.sanitizeFn):i}_resolvePossibleFunction(i){return w(i,[void 0,this])}_putElementInTemplate(i,c){if(this._config.html){c.innerHTML="",c.append(i);return}c.textContent=i.textContent}}const k_="tooltip",B_=new Set(["sanitize","allowList","sanitizeFn"]),ko="fade",F_="modal",li="show",H_=".tooltip-inner",Zc=`.${F_}`,tu="hide.bs.modal",cr="hover",Bo="focus",V_="click",U_="manual",j_="hide",q_="hidden",K_="show",W_="shown",Y_="inserted",z_="click",G_="focusin",J_="focusout",Q_="mouseenter",X_="mouseleave",Z_={AUTO:"auto",TOP:"top",RIGHT:O()?"left":"right",BOTTOM:"bottom",LEFT:O()?"right":"left"},tb={allowList:Xc,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'',title:"",trigger:"hover focus"},eb={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class Zn extends K{constructor(i,c){if(typeof Cc>"u")throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org/docs/v2/)");super(i,c),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return tb}static get DefaultType(){return eb}static get NAME(){return k_}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){if(this._isEnabled){if(this._isShown()){this._leave();return}this._enter()}}dispose(){clearTimeout(this._timeout),T.off(this._element.closest(Zc),tu,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if(this._element.style.display==="none")throw new Error("Please use show on visible elements");if(!(this._isWithContent()&&this._isEnabled))return;const i=T.trigger(this._element,this.constructor.eventName(K_)),m=(H(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(i.defaultPrevented||!m)return;this._disposePopper();const y=this._getTipElement();this._element.setAttribute("aria-describedby",y.getAttribute("id"));const{container:$}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||($.append(y),T.trigger(this._element,this.constructor.eventName(Y_))),this._popper=this._createPopper(y),y.classList.add(li),"ontouchstart"in document.documentElement)for(const W of[].concat(...document.body.children))T.on(W,"mouseover",I);const x=()=>{T.trigger(this._element,this.constructor.eventName(W_)),this._isHovered===!1&&this._leave(),this._isHovered=!1};this._queueCallback(x,this.tip,this._isAnimated())}hide(){if(!this._isShown()||T.trigger(this._element,this.constructor.eventName(j_)).defaultPrevented)return;if(this._getTipElement().classList.remove(li),"ontouchstart"in document.documentElement)for(const y of[].concat(...document.body.children))T.off(y,"mouseover",I);this._activeTrigger[V_]=!1,this._activeTrigger[Bo]=!1,this._activeTrigger[cr]=!1,this._isHovered=null;const m=()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),T.trigger(this._element,this.constructor.eventName(q_)))};this._queueCallback(m,this.tip,this._isAnimated())}update(){this._popper&&this._popper.update()}_isWithContent(){return!!this._getTitle()}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(i){const c=this._getTemplateFactory(i).toHtml();if(!c)return null;c.classList.remove(ko,li),c.classList.add(`bs-${this.constructor.NAME}-auto`);const m=f(this.constructor.NAME).toString();return c.setAttribute("id",m),this._isAnimated()&&c.classList.add(ko),c}setContent(i){this._newContent=i,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(i){return this._templateFactory?this._templateFactory.changeContent(i):this._templateFactory=new M_({...this._config,content:i,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{[H_]:this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(i){return this.constructor.getOrCreateInstance(i.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(ko)}_isShown(){return this.tip&&this.tip.classList.contains(li)}_createPopper(i){const c=w(this._config.placement,[this,i,this._element]),m=Z_[c.toUpperCase()];return Do(this._element,i,this._getPopperConfig(m))}_getOffset(){const{offset:i}=this._config;return typeof i=="string"?i.split(",").map(c=>Number.parseInt(c,10)):typeof i=="function"?c=>i(c,this._element):i}_resolvePossibleFunction(i){return w(i,[this._element,this._element])}_getPopperConfig(i){const c={placement:i,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:m=>{this._getTipElement().setAttribute("data-popper-placement",m.state.placement)}}]};return{...c,...w(this._config.popperConfig,[void 0,c])}}_setListeners(){const i=this._config.trigger.split(" ");for(const c of i)if(c==="click")T.on(this._element,this.constructor.eventName(z_),this._config.selector,m=>{this._initializeOnDelegatedTarget(m).toggle()});else if(c!==U_){const m=c===cr?this.constructor.eventName(Q_):this.constructor.eventName(G_),y=c===cr?this.constructor.eventName(X_):this.constructor.eventName(J_);T.on(this._element,m,this._config.selector,$=>{const x=this._initializeOnDelegatedTarget($);x._activeTrigger[$.type==="focusin"?Bo:cr]=!0,x._enter()}),T.on(this._element,y,this._config.selector,$=>{const x=this._initializeOnDelegatedTarget($);x._activeTrigger[$.type==="focusout"?Bo:cr]=x._element.contains($.relatedTarget),x._leave()})}this._hideModalHandler=()=>{this._element&&this.hide()},T.on(this._element.closest(Zc),tu,this._hideModalHandler)}_fixTitle(){const i=this._element.getAttribute("title");i&&(!this._element.getAttribute("aria-label")&&!this._element.textContent.trim()&&this._element.setAttribute("aria-label",i),this._element.setAttribute("data-bs-original-title",i),this._element.removeAttribute("title"))}_enter(){if(this._isShown()||this._isHovered){this._isHovered=!0;return}this._isHovered=!0,this._setTimeout(()=>{this._isHovered&&this.show()},this._config.delay.show)}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout(()=>{this._isHovered||this.hide()},this._config.delay.hide))}_setTimeout(i,c){clearTimeout(this._timeout),this._timeout=setTimeout(i,c)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(i){const c=b.getDataAttributes(this._element);for(const m of Object.keys(c))B_.has(m)&&delete c[m];return i={...c,...typeof i=="object"&&i?i:{}},i=this._mergeConfigObj(i),i=this._configAfterMerge(i),this._typeCheckConfig(i),i}_configAfterMerge(i){return i.container=i.container===!1?document.body:_(i.container),typeof i.delay=="number"&&(i.delay={show:i.delay,hide:i.delay}),typeof i.title=="number"&&(i.title=i.title.toString()),typeof i.content=="number"&&(i.content=i.content.toString()),i}_getDelegateConfig(){const i={};for(const[c,m]of Object.entries(this._config))this.constructor.Default[c]!==m&&(i[c]=m);return i.selector=!1,i.trigger="manual",i}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(i){return this.each(function(){const c=Zn.getOrCreateInstance(this,i);if(typeof i=="string"){if(typeof c[i]>"u")throw new TypeError(`No method named "${i}"`);c[i]()}})}}R(Zn);const nb="popover",sb=".popover-header",rb=".popover-body",ib={...Zn.Default,content:"",offset:[0,8],placement:"right",template:'',trigger:"click"},ob={...Zn.DefaultType,content:"(null|string|element|function)"};class ci extends Zn{static get Default(){return ib}static get DefaultType(){return ob}static get NAME(){return nb}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{[sb]:this._getTitle(),[rb]:this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(i){return this.each(function(){const c=ci.getOrCreateInstance(this,i);if(typeof i=="string"){if(typeof c[i]>"u")throw new TypeError(`No method named "${i}"`);c[i]()}})}}R(ci);const ab="scrollspy",Fo=".bs.scrollspy",lb=".data-api",cb=`activate${Fo}`,eu=`click${Fo}`,ub=`load${Fo}${lb}`,fb="dropdown-item",ks="active",db='[data-bs-spy="scroll"]',Ho="[href]",hb=".nav, .list-group",nu=".nav-link",pb=`${nu}, .nav-item > ${nu}, .list-group-item`,mb=".dropdown",gb=".dropdown-toggle",_b={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},bb={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class ur extends K{constructor(i,c){super(i,c),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement=getComputedStyle(this._element).overflowY==="visible"?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return _b}static get DefaultType(){return bb}static get NAME(){return ab}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const i of this._observableSections.values())this._observer.observe(i)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(i){return i.target=_(i.target)||document.body,i.rootMargin=i.offset?`${i.offset}px 0px -30%`:i.rootMargin,typeof i.threshold=="string"&&(i.threshold=i.threshold.split(",").map(c=>Number.parseFloat(c))),i}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(T.off(this._config.target,eu),T.on(this._config.target,eu,Ho,i=>{const c=this._observableSections.get(i.target.hash);if(c){i.preventDefault();const m=this._rootElement||window,y=c.offsetTop-this._element.offsetTop;if(m.scrollTo){m.scrollTo({top:y,behavior:"smooth"});return}m.scrollTop=y}}))}_getNewObserver(){const i={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver(c=>this._observerCallback(c),i)}_observerCallback(i){const c=x=>this._targetLinks.get(`#${x.target.id}`),m=x=>{this._previousScrollData.visibleEntryTop=x.target.offsetTop,this._process(c(x))},y=(this._rootElement||document.documentElement).scrollTop,$=y>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=y;for(const x of i){if(!x.isIntersecting){this._activeTarget=null,this._clearActiveClass(c(x));continue}const W=x.target.offsetTop>=this._previousScrollData.visibleEntryTop;if($&&W){if(m(x),!y)return;continue}!$&&!W&&m(x)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const i=N.find(Ho,this._config.target);for(const c of i){if(!c.hash||A(c))continue;const m=N.findOne(decodeURI(c.hash),this._element);E(m)&&(this._targetLinks.set(decodeURI(c.hash),c),this._observableSections.set(c.hash,m))}}_process(i){this._activeTarget!==i&&(this._clearActiveClass(this._config.target),this._activeTarget=i,i.classList.add(ks),this._activateParents(i),T.trigger(this._element,cb,{relatedTarget:i}))}_activateParents(i){if(i.classList.contains(fb)){N.findOne(gb,i.closest(mb)).classList.add(ks);return}for(const c of N.parents(i,hb))for(const m of N.prev(c,pb))m.classList.add(ks)}_clearActiveClass(i){i.classList.remove(ks);const c=N.find(`${Ho}.${ks}`,i);for(const m of c)m.classList.remove(ks)}static jQueryInterface(i){return this.each(function(){const c=ur.getOrCreateInstance(this,i);if(typeof i=="string"){if(c[i]===void 0||i.startsWith("_")||i==="constructor")throw new TypeError(`No method named "${i}"`);c[i]()}})}}T.on(window,ub,()=>{for(const d of N.find(db))ur.getOrCreateInstance(d)}),R(ur);const vb="tab",ts=".bs.tab",yb=`hide${ts}`,Eb=`hidden${ts}`,wb=`show${ts}`,Tb=`shown${ts}`,Ab=`click${ts}`,Sb=`keydown${ts}`,Cb=`load${ts}`,Ob="ArrowLeft",su="ArrowRight",Rb="ArrowUp",ru="ArrowDown",Vo="Home",iu="End",es="active",ou="fade",Uo="show",Nb="dropdown",au=".dropdown-toggle",$b=".dropdown-menu",jo=`:not(${au})`,xb='.list-group, .nav, [role="tablist"]',Pb=".nav-item, .list-group-item",Db=`.nav-link${jo}, .list-group-item${jo}, [role="tab"]${jo}`,lu='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',qo=`${Db}, ${lu}`,Lb=`.${es}[data-bs-toggle="tab"], .${es}[data-bs-toggle="pill"], .${es}[data-bs-toggle="list"]`;class ns extends K{constructor(i){super(i),this._parent=this._element.closest(xb),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),T.on(this._element,Sb,c=>this._keydown(c)))}static get NAME(){return vb}show(){const i=this._element;if(this._elemIsActive(i))return;const c=this._getActiveElem(),m=c?T.trigger(c,yb,{relatedTarget:i}):null;T.trigger(i,wb,{relatedTarget:c}).defaultPrevented||m&&m.defaultPrevented||(this._deactivate(c,i),this._activate(i,c))}_activate(i,c){if(!i)return;i.classList.add(es),this._activate(N.getElementFromSelector(i));const m=()=>{if(i.getAttribute("role")!=="tab"){i.classList.add(Uo);return}i.removeAttribute("tabindex"),i.setAttribute("aria-selected",!0),this._toggleDropDown(i,!0),T.trigger(i,Tb,{relatedTarget:c})};this._queueCallback(m,i,i.classList.contains(ou))}_deactivate(i,c){if(!i)return;i.classList.remove(es),i.blur(),this._deactivate(N.getElementFromSelector(i));const m=()=>{if(i.getAttribute("role")!=="tab"){i.classList.remove(Uo);return}i.setAttribute("aria-selected",!1),i.setAttribute("tabindex","-1"),this._toggleDropDown(i,!1),T.trigger(i,Eb,{relatedTarget:c})};this._queueCallback(m,i,i.classList.contains(ou))}_keydown(i){if(![Ob,su,Rb,ru,Vo,iu].includes(i.key))return;i.stopPropagation(),i.preventDefault();const c=this._getChildren().filter(y=>!A(y));let m;if([Vo,iu].includes(i.key))m=c[i.key===Vo?0:c.length-1];else{const y=[su,ru].includes(i.key);m=D(c,i.target,y,!0)}m&&(m.focus({preventScroll:!0}),ns.getOrCreateInstance(m).show())}_getChildren(){return N.find(qo,this._parent)}_getActiveElem(){return this._getChildren().find(i=>this._elemIsActive(i))||null}_setInitialAttributes(i,c){this._setAttributeIfNotExists(i,"role","tablist");for(const m of c)this._setInitialAttributesOnChild(m)}_setInitialAttributesOnChild(i){i=this._getInnerElement(i);const c=this._elemIsActive(i),m=this._getOuterElement(i);i.setAttribute("aria-selected",c),m!==i&&this._setAttributeIfNotExists(m,"role","presentation"),c||i.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(i,"role","tab"),this._setInitialAttributesOnTargetPanel(i)}_setInitialAttributesOnTargetPanel(i){const c=N.getElementFromSelector(i);c&&(this._setAttributeIfNotExists(c,"role","tabpanel"),i.id&&this._setAttributeIfNotExists(c,"aria-labelledby",`${i.id}`))}_toggleDropDown(i,c){const m=this._getOuterElement(i);if(!m.classList.contains(Nb))return;const y=($,x)=>{const W=N.findOne($,m);W&&W.classList.toggle(x,c)};y(au,es),y($b,Uo),m.setAttribute("aria-expanded",c)}_setAttributeIfNotExists(i,c,m){i.hasAttribute(c)||i.setAttribute(c,m)}_elemIsActive(i){return i.classList.contains(es)}_getInnerElement(i){return i.matches(qo)?i:N.findOne(qo,i)}_getOuterElement(i){return i.closest(Pb)||i}static jQueryInterface(i){return this.each(function(){const c=ns.getOrCreateInstance(this);if(typeof i=="string"){if(c[i]===void 0||i.startsWith("_")||i==="constructor")throw new TypeError(`No method named "${i}"`);c[i]()}})}}T.on(document,Ab,lu,function(d){["A","AREA"].includes(this.tagName)&&d.preventDefault(),!A(this)&&ns.getOrCreateInstance(this).show()}),T.on(window,Cb,()=>{for(const d of N.find(Lb))ns.getOrCreateInstance(d)}),R(ns);const Ib="toast",Nn=".bs.toast",Mb=`mouseover${Nn}`,kb=`mouseout${Nn}`,Bb=`focusin${Nn}`,Fb=`focusout${Nn}`,Hb=`hide${Nn}`,Vb=`hidden${Nn}`,Ub=`show${Nn}`,jb=`shown${Nn}`,qb="fade",cu="hide",ui="show",fi="showing",Kb={animation:"boolean",autohide:"boolean",delay:"number"},Wb={animation:!0,autohide:!0,delay:5e3};class fr extends K{constructor(i,c){super(i,c),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return Wb}static get DefaultType(){return Kb}static get NAME(){return Ib}show(){if(T.trigger(this._element,Ub).defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add(qb);const c=()=>{this._element.classList.remove(fi),T.trigger(this._element,jb),this._maybeScheduleHide()};this._element.classList.remove(cu),F(this._element),this._element.classList.add(ui,fi),this._queueCallback(c,this._element,this._config.animation)}hide(){if(!this.isShown()||T.trigger(this._element,Hb).defaultPrevented)return;const c=()=>{this._element.classList.add(cu),this._element.classList.remove(fi,ui),T.trigger(this._element,Vb)};this._element.classList.add(fi),this._queueCallback(c,this._element,this._config.animation)}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(ui),super.dispose()}isShown(){return this._element.classList.contains(ui)}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout(()=>{this.hide()},this._config.delay)))}_onInteraction(i,c){switch(i.type){case"mouseover":case"mouseout":{this._hasMouseInteraction=c;break}case"focusin":case"focusout":{this._hasKeyboardInteraction=c;break}}if(c){this._clearTimeout();return}const m=i.relatedTarget;this._element===m||this._element.contains(m)||this._maybeScheduleHide()}_setListeners(){T.on(this._element,Mb,i=>this._onInteraction(i,!0)),T.on(this._element,kb,i=>this._onInteraction(i,!1)),T.on(this._element,Bb,i=>this._onInteraction(i,!0)),T.on(this._element,Fb,i=>this._onInteraction(i,!1))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(i){return this.each(function(){const c=fr.getOrCreateInstance(this,i);if(typeof i=="string"){if(typeof c[i]>"u")throw new TypeError(`No method named "${i}"`);c[i](this)}})}}return ot(fr),R(fr),{Alert:Et,Button:Cn,Carousel:Cs,Collapse:Rs,Dropdown:je,Modal:Xn,Offcanvas:hn,Popover:ci,ScrollSpy:ur,Tab:ns,Toast:fr,Tooltip:Zn}})}(Pi)),Pi.exports}Y1();const jl=DE(F0);jl.use(ME());jl.use(Ul);jl.mount("#app"); diff --git a/src/static/client/dist/client.html b/src/static/client/dist/client.html index f5965a6..114717a 100644 --- a/src/static/client/dist/client.html +++ b/src/static/client/dist/client.html @@ -4,11 +4,41 @@ - Vite App - - + WGDashboard Client + + + -
+
+
+
+ WGDashboard Client +
+ +
+
diff --git a/src/static/client/index.html b/src/static/client/index.html index 314ae4f..4d42385 100644 --- a/src/static/client/index.html +++ b/src/static/client/index.html @@ -5,11 +5,39 @@ WGDashboard Client - - + -
+
+
+
+ WGDashboard Client +
+ +
+
diff --git a/src/static/client/src/assets/main.css b/src/static/client/src/assets/main.css index 3b464f8..d062b59 100644 --- a/src/static/client/src/assets/main.css +++ b/src/static/client/src/assets/main.css @@ -15,7 +15,7 @@ } *{ - font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; + font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important; } @property --brandColor1 { diff --git a/src/static/client/src/components/SignIn/oidc/oidc.vue b/src/static/client/src/components/SignIn/oidc/oidc.vue new file mode 100644 index 0000000..87dfae2 --- /dev/null +++ b/src/static/client/src/components/SignIn/oidc/oidc.vue @@ -0,0 +1,28 @@ + + + + + \ No newline at end of file diff --git a/src/static/client/src/components/SignIn/oidc/oidcBtn.vue b/src/static/client/src/components/SignIn/oidc/oidcBtn.vue new file mode 100644 index 0000000..0b9b91e --- /dev/null +++ b/src/static/client/src/components/SignIn/oidc/oidcBtn.vue @@ -0,0 +1,43 @@ + + + + + \ No newline at end of file diff --git a/src/static/client/src/components/SignIn/signInForm.vue b/src/static/client/src/components/SignIn/signInForm.vue index 4edfb79..4306162 100644 --- a/src/static/client/src/components/SignIn/signInForm.vue +++ b/src/static/client/src/components/SignIn/signInForm.vue @@ -4,6 +4,7 @@ import {clientStore} from "@/stores/clientStore.js"; import axios from "axios"; import {axiosPost, requestURl} from "@/utilities/request.js"; import {useRoute, useRouter} from "vue-router"; +import Oidc from "@/components/SignIn/oidc/oidc.vue"; const loading = ref(false) const formData = reactive({ Email: "", @@ -40,15 +41,6 @@ if (route.query.Email){ formData.Email = route.query.Email } -const params = new URLSearchParams({ - client_id: "ijDjDnBCDuA75srtsq7ksxwpZkLjxiRZVdmkWnRC", - redirect_uri: window.location.protocol + '//' + window.location.host + window.location.pathname, - response_type: 'code', - state: 'Authentik', - scope: 'openid email profile' -}).toString() -console.log(params) -